
Function: ?FFTInit@@YAJPAJJPAM@Z
/* FFT library	*/
/* Library of in-place fast fourier transforms	*/
/* Forward and inverse complex transforms	*/
/* and real forward transform	*/
/* Optimized for RISC processors with many registers */
/* Version 1.1 John Green NUWC New London CT	January 96	*/
/* Version 1.1 renamed as fftlib from fftbig	*/
/* Version 1.1 removed (float *)((char *) ptr) optimization	*/
/* Version 1.0  John Green NUWC New London CT	December 95	*/
/* (John Green) green_jt@vsdec.nl.nuwc.navy.mil	*/
/* green_jt@vsdec.nl.nuwc.navy.mil	*/

#include <math.h>
#include "fftlib.h"

#ifdef K_USE_PRAGMA_EXPORT
	#pragma export on
#endif

#define MAXMROOT	9	/* 2^(MAXMROOT-1) = # of elements in BRcnt */

/* Bit reversed counter */
static const unsigned char BRcnt[256] = {
  0,	128,	 64,	192,	32, 	160,	 96,	224,	16, 	144,	 80,	208,
 48,	176,	112,	240,	 8, 	136,	 72,	200,	40, 	168,	104,	232,
 24,	152,	 88,	216,	56, 	184,	120,	248,	 4, 	132,	 68,	196,
 36,	164,	100,	228,	20, 	148,	 84,	212,	52, 	180,	116,	244,
 12,	140,	 76,	204,	44, 	172,	108,	236,	28, 	156,	 92,	220,
 60,	188,	124,	252,	 2, 	130,	 66,	194,	34, 	162,	 98,	226,
 18,	146,	 82,	210,	50, 	178,	114,	242,	10, 	138,	 74,	202,
 42,	170,	106,	234,	26, 	154,	 90,	218,	58, 	186,	122,	250,
  6,	134,	 70,	198,	38, 	166,	102,	230,	22, 	150,	 86,	214,
 54,	182,	118,	246,	14, 	142,	 78,	206,	46, 	174,	110,	238,
 30,	158,	 94,	222,	62, 	190,	126,	254,	 1, 	129,	 65,	193,
 33,	161,	 97,	225,	17, 	145,	 81,	209,	49, 	177,	113,	241,
  9,	137,	 73,	201,	41, 	169,	105,	233,	25, 	153,	 89,	217,
 57,	185,	121,	249,	 5, 	133,	 69,	197,	37, 	165,	101,	229,
 21,	149,	 85,	213,	53, 	181,	117,	245,	13, 	141,	 77,	205,
 45,	173,	109,	237,	29, 	157,	 93,	221,	61, 	189,	125,	253,
  3,	131,	 67,	195,	35, 	163,	 99,	227,	19, 	147,	 83,	211,
 51,	179,	115,	243,	11, 	139,	 75,	203,	43, 	171,	107,	235,
 27,	155,	 91,	219,	59, 	187,	123,	251,	 7, 	135,	 71,	199,
 39,	167,	103,	231,	23, 	151,	 87,	215,	55, 	183,	119,	247,
 15,	143,	 79,	207,	47, 	175,	111,	239,	31, 	159,	 95,	223,
 63,	191,	127,	255	};

/* Table of powers of 2 */
static const long Ntbl[21] = {1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048,
				 4096, 8192, 16384, 32768, 65536, 131072, 262144, 524288, 1048576};

long FFTInit(long *fftMptr, long fftN, float *Utbl){
00002: 0000 55          PUSH    EBP
00003: 0001 89 E5       MOV     EBP, ESP
00004: 0003 53          PUSH    EBX
00005: 0004 56          PUSH    ESI
00006: 0005 57          PUSH    EDI
00007: 0006 83 EC 10    SUB     ESP, 00000010
00008: 0009 8B 5D 08    MOV     EBX, DWORD PTR 00000008[EBP]
00009: 000C 8B 7D 10    MOV     EDI, DWORD PTR 00000010[EBP]
{
/* Compute cosine table and check size for complex ffts	*/
/* INPUTS */
/* fftN = size of fft	*/
/* OUTPUTS */
/* *fftMptr = log2 of fft size	*/
/* *Utbl = cosine table with fftN/4 + 1 entries (angles = 0 to pi/2 inclusive)	*/
/* RETURNS */
/* 1 if fftN is invalid, 0 otherwise	*/
long 	i1, ErrVal;
ErrVal = 0;
00011: 000F C7 45 E4 00000000 MOV DWORD PTR FFFFFFE4[EBP], 00000000
ErrVal = 0;
*fftMptr = (long)(log(fftN)/log(2.0) + 0.5);
00013: 0016 DD 05 00000000 FLD  QWORD PTR .data+00000158
00014: 001C D9 E8       FLD1    
00015: 001E D9 C9       FXCH    ST(1)
00016: 0020 D9 F1       FYL2X   
00017: 0022 D9 ED       FLDLN2  
00018: 0024 DE C9       FMULP   ST(1), ST
00019: 0026 DB 45 0C    FILD    DWORD PTR 0000000C[EBP]
00020: 0029 D9 E8       FLD1    
00021: 002B D9 C9       FXCH    ST(1)
00022: 002D D9 F1       FYL2X   
00023: 002F D9 ED       FLDLN2  
00024: 0031 DE C9       FMULP   ST(1), ST
00025: 0033 DE F1       FDIVRP  ST(1), ST
00026: 0035 DC 05 00000000 FADD QWORD PTR .data+00000160
00027: 003B D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00028: 003E 66 81 4D EC 0C00 OR WORD PTR FFFFFFEC[EBP], 00000C00
00029: 0044 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00030: 0047 DB 5D EC    FISTP   DWORD PTR FFFFFFEC[EBP]
00031: 004A 8B 55 EC    MOV     EDX, DWORD PTR FFFFFFEC[EBP]
00032: 004D D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00033: 0050 66 81 65 EC F3FF AND WORD PTR FFFFFFEC[EBP], 0000F3FF
00038: 0056 83 EC 08    SUB     ESP, 00000008
00034: 0059 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00035: 005C 89 13       MOV     DWORD PTR 00000000[EBX], EDX
*fftMptr = (long)(log(fftN)/log(2.0) + 0.5);
//printf("fftN %d\nfftMptr %d\n",  fftN, *fftMptr);
if ((*fftMptr >= 3) & (*fftMptr <= 19) & (int)(pow(2,*fftMptr)+.5) == fftN)
00037: 005E DB 03       FILD    DWORD PTR 00000000[EBX]
00039: 0060 DD 1C 24    FSTP    QWORD PTR 00000000[ESP]
00040: 0063 DD 05 00000000 FLD  QWORD PTR .data+00000168
00041: 0069 83 EC 08    SUB     ESP, 00000008
00042: 006C DD 1C 24    FSTP    QWORD PTR 00000000[ESP]
00043: 006F FF 15 00000000 CALL DWORD PTR __imp__pow
00044: 0075 83 C4 10    ADD     ESP, 00000010
00045: 0078 DC 05 00000000 FADD QWORD PTR .data+00000170
00046: 007E D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00047: 0081 66 81 4D EC 0C00 OR WORD PTR FFFFFFEC[EBP], 00000C00
00048: 0087 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00049: 008A DB 5D EC    FISTP   DWORD PTR FFFFFFEC[EBP]
00050: 008D 8B 55 EC    MOV     EDX, DWORD PTR FFFFFFEC[EBP]
00051: 0090 D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00052: 0093 66 81 65 EC F3FF AND WORD PTR FFFFFFEC[EBP], 0000F3FF
00053: 0099 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00054: 009C 39 55 0C    CMP     DWORD PTR 0000000C[EBP], EDX
00057: 009F 8B 33       MOV     ESI, DWORD PTR 00000000[EBX]
00055: 00A1 0F 94 C1    SETE    CL
00056: 00A4 81 E1 000000FF AND  ECX, 000000FF
00058: 00AA 83 FE 13    CMP     ESI, 00000013
00059: 00AD 0F 9E C2    SETLE   DL
00060: 00B0 81 E2 000000FF AND  EDX, 000000FF
00061: 00B6 83 FE 03    CMP     ESI, 00000003
00062: 00B9 0F 9D C0    SETGE   AL
00063: 00BC 25 000000FF AND     EAX, 000000FF
00064: 00C1 21 C2       AND     EDX, EAX
00065: 00C3 21 D1       AND     ECX, EDX
00066: 00C5 09 C9       OR      ECX, ECX
00067: 00C7 74 4C       JE      L0001
if ((*fftMptr >= 3) & (*fftMptr <= 19) & (int)(pow(2,*fftMptr)+.5) == fftN)
	for (i1 = 0; i1 <= fftN/4; i1++)
00069: 00C9 C7 45 E8 00000000 MOV DWORD PTR FFFFFFE8[EBP], 00000000
00070: 00D0 B9 00000004 MOV     ECX, 00000004
00071: 00D5 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00072: 00D8 99          CDQ     
00073: 00D9 F7 F9       IDIV    ECX
00074: 00DB 89 C3       MOV     EBX, EAX
00075: 00DD             NOOP    
00076: 00DD EB 2F       JMP     L0002
00077: 00DF     L0003
for (i1 = 0; i1 <= fftN/4; i1++)
		Utbl[i1] = cos( ( 3.1415926535897932384626433832795 * 2.0 * i1 ) /  fftN );
00079: 00DF DB 45 0C    FILD    DWORD PTR 0000000C[EBP]
00080: 00E2 DB 45 E8    FILD    DWORD PTR FFFFFFE8[EBP]
00081: 00E5 DC 0D 00000000 FMUL QWORD PTR .data+00000178
00082: 00EB DE F1       FDIVRP  ST(1), ST
00083: 00ED D9 FF       FCOS    
00084: 00EF DF E0       FSTSW   AX
00085: 00F1 A9 00000400 TEST    EAX, 00000400
00086: 00F6 74 07       JZ      L0004
00087: 00F8 E8 00000000 CALL    NEAR PTR __reduce
00088: 00FD D9 FF       FCOS    
00089: 00FF     L0004
00090: 00FF D9 5D EC    FSTP    DWORD PTR FFFFFFEC[EBP]
00091: 0102 D9 45 EC    FLD     DWORD PTR FFFFFFEC[EBP]
00092: 0105 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
00093: 0108 D9 1C 87    FSTP    DWORD PTR 00000000[EDI][EAX*4]
00094: 010B FF 45 E8    INC     DWORD PTR FFFFFFE8[EBP]
00095: 010E     L0002
00096: 010E 39 5D E8    CMP     DWORD PTR FFFFFFE8[EBP], EBX
00097: 0111 7E CC       JLE     L0003
00098: 0113 EB 07       JMP     L0005
00099: 0115     L0001
Utbl[i1] = cos( ( 3.1415926535897932384626433832795 * 2.0 * i1 ) /  fftN );
else
	ErrVal = 1;
00101: 0115 C7 45 E4 00000001 MOV DWORD PTR FFFFFFE4[EBP], 00000001
00102: 011C     L0005
ErrVal = 1;
return ErrVal;
00104: 011C 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
00105: 011F     L0000
00106: 011F 8D 65 F4    LEA     ESP, DWORD PTR FFFFFFF4[EBP]
00107: 0122 5F          POP     EDI
00108: 0123 5E          POP     ESI
00109: 0124 5B          POP     EBX
00110: 0125 5D          POP     EBP
00111: 0126 C3          RETN    

Function: ?rFFTInit@@YAJPAJJPAM@Z
return ErrVal;
}

long rFFTInit(long *fftMptr, long fftN, float *Utbl){
00002: 0000 55          PUSH    EBP
00003: 0001 89 E5       MOV     EBP, ESP
00004: 0003 53          PUSH    EBX
00005: 0004 56          PUSH    ESI
00006: 0005 57          PUSH    EDI
00007: 0006 83 EC 10    SUB     ESP, 00000010
00008: 0009 8B 5D 08    MOV     EBX, DWORD PTR 00000008[EBP]
00009: 000C 8B 7D 10    MOV     EDI, DWORD PTR 00000010[EBP]
{
/* Compute cosine table and check size for a real input fft	*/
/* INPUTS */
/* fftN = size of fft	*/
/* OUTPUTS */
/* *fftMptr = log2 of fft size	*/
/* *Utbl = cosine table with fftN/4 + 1 entries (angles = 0 to pi/2 inclusive)	*/
/* RETURNS */
/* 1 if fftN is invalid, 0 otherwise	*/
long 	i1, ErrVal;
ErrVal = 0;
00011: 000F C7 45 E4 00000000 MOV DWORD PTR FFFFFFE4[EBP], 00000000
ErrVal = 0;
*fftMptr = (long)(log(fftN)/log(2.0) + 0.5);
00013: 0016 DD 05 00000000 FLD  QWORD PTR .data+00000180
00014: 001C D9 E8       FLD1    
00015: 001E D9 C9       FXCH    ST(1)
00016: 0020 D9 F1       FYL2X   
00017: 0022 D9 ED       FLDLN2  
00018: 0024 DE C9       FMULP   ST(1), ST
00019: 0026 DB 45 0C    FILD    DWORD PTR 0000000C[EBP]
00020: 0029 D9 E8       FLD1    
00021: 002B D9 C9       FXCH    ST(1)
00022: 002D D9 F1       FYL2X   
00023: 002F D9 ED       FLDLN2  
00024: 0031 DE C9       FMULP   ST(1), ST
00025: 0033 DE F1       FDIVRP  ST(1), ST
00026: 0035 DC 05 00000000 FADD QWORD PTR .data+00000188
00027: 003B D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00028: 003E 66 81 4D EC 0C00 OR WORD PTR FFFFFFEC[EBP], 00000C00
00029: 0044 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00030: 0047 DB 5D EC    FISTP   DWORD PTR FFFFFFEC[EBP]
00031: 004A 8B 55 EC    MOV     EDX, DWORD PTR FFFFFFEC[EBP]
00032: 004D D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00033: 0050 66 81 65 EC F3FF AND WORD PTR FFFFFFEC[EBP], 0000F3FF
00038: 0056 83 EC 08    SUB     ESP, 00000008
00034: 0059 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00035: 005C 89 13       MOV     DWORD PTR 00000000[EBX], EDX
*fftMptr = (long)(log(fftN)/log(2.0) + 0.5);
if ((*fftMptr >= 4) & (*fftMptr <= 20) & (int)(pow(2,*fftMptr)+.5) == fftN)
00037: 005E DB 03       FILD    DWORD PTR 00000000[EBX]
00039: 0060 DD 1C 24    FSTP    QWORD PTR 00000000[ESP]
00040: 0063 DD 05 00000000 FLD  QWORD PTR .data+00000190
00041: 0069 83 EC 08    SUB     ESP, 00000008
00042: 006C DD 1C 24    FSTP    QWORD PTR 00000000[ESP]
00043: 006F FF 15 00000000 CALL DWORD PTR __imp__pow
00044: 0075 83 C4 10    ADD     ESP, 00000010
00045: 0078 DC 05 00000000 FADD QWORD PTR .data+00000198
00046: 007E D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00047: 0081 66 81 4D EC 0C00 OR WORD PTR FFFFFFEC[EBP], 00000C00
00048: 0087 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00049: 008A DB 5D EC    FISTP   DWORD PTR FFFFFFEC[EBP]
00050: 008D 8B 55 EC    MOV     EDX, DWORD PTR FFFFFFEC[EBP]
00051: 0090 D9 7D EC    FSTCW   WORD PTR FFFFFFEC[EBP]
00052: 0093 66 81 65 EC F3FF AND WORD PTR FFFFFFEC[EBP], 0000F3FF
00053: 0099 D9 6D EC    FLDCW   WORD PTR FFFFFFEC[EBP]
00054: 009C 39 55 0C    CMP     DWORD PTR 0000000C[EBP], EDX
00057: 009F 8B 33       MOV     ESI, DWORD PTR 00000000[EBX]
00055: 00A1 0F 94 C1    SETE    CL
00056: 00A4 81 E1 000000FF AND  ECX, 000000FF
00058: 00AA 83 FE 14    CMP     ESI, 00000014
00059: 00AD 0F 9E C2    SETLE   DL
00060: 00B0 81 E2 000000FF AND  EDX, 000000FF
00061: 00B6 83 FE 04    CMP     ESI, 00000004
00062: 00B9 0F 9D C0    SETGE   AL
00063: 00BC 25 000000FF AND     EAX, 000000FF
00064: 00C1 21 C2       AND     EDX, EAX
00065: 00C3 21 D1       AND     ECX, EDX
00066: 00C5 09 C9       OR      ECX, ECX
00067: 00C7 74 4C       JE      L0001
if ((*fftMptr >= 4) & (*fftMptr <= 20) & (int)(pow(2,*fftMptr)+.5) == fftN)
	
	for (i1 = 0; i1 <= fftN/4; i1++)
00069: 00C9 C7 45 E8 00000000 MOV DWORD PTR FFFFFFE8[EBP], 00000000
00070: 00D0 B9 00000004 MOV     ECX, 00000004
00071: 00D5 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00072: 00D8 99          CDQ     
00073: 00D9 F7 F9       IDIV    ECX
00074: 00DB 89 C3       MOV     EBX, EAX
00075: 00DD             NOOP    
00076: 00DD EB 2F       JMP     L0002
00077: 00DF     L0003
for (i1 = 0; i1 <= fftN/4; i1++)
		Utbl[i1] = cos( ( 3.1415926535897932384626433832795 * 2.0 * i1 ) /  fftN );
00079: 00DF DB 45 0C    FILD    DWORD PTR 0000000C[EBP]
00080: 00E2 DB 45 E8    FILD    DWORD PTR FFFFFFE8[EBP]
00081: 00E5 DC 0D 00000000 FMUL QWORD PTR .data+000001a0
00082: 00EB DE F1       FDIVRP  ST(1), ST
00083: 00ED D9 FF       FCOS    
00084: 00EF DF E0       FSTSW   AX
00085: 00F1 A9 00000400 TEST    EAX, 00000400
00086: 00F6 74 07       JZ      L0004
00087: 00F8 E8 00000000 CALL    NEAR PTR __reduce
00088: 00FD D9 FF       FCOS    
00089: 00FF     L0004
00090: 00FF D9 5D EC    FSTP    DWORD PTR FFFFFFEC[EBP]
00091: 0102 D9 45 EC    FLD     DWORD PTR FFFFFFEC[EBP]
00092: 0105 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
00093: 0108 D9 1C 87    FSTP    DWORD PTR 00000000[EDI][EAX*4]
00094: 010B FF 45 E8    INC     DWORD PTR FFFFFFE8[EBP]
00095: 010E     L0002
00096: 010E 39 5D E8    CMP     DWORD PTR FFFFFFE8[EBP], EBX
00097: 0111 7E CC       JLE     L0003
00098: 0113 EB 07       JMP     L0005
00099: 0115     L0001
Utbl[i1] = cos( ( 3.1415926535897932384626433832795 * 2.0 * i1 ) /  fftN );
else
	ErrVal = 1;
00101: 0115 C7 45 E4 00000001 MOV DWORD PTR FFFFFFE4[EBP], 00000001
00102: 011C     L0005
ErrVal = 1;
return ErrVal;
00104: 011C 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
00105: 011F     L0000
00106: 011F 8D 65 F4    LEA     ESP, DWORD PTR FFFFFFF4[EBP]
00107: 0122 5F          POP     EDI
00108: 0123 5E          POP     ESI
00109: 0124 5B          POP     EBX
00110: 0125 5D          POP     EBP
00111: 0126 C3          RETN    

Function: ?ffts@@YAXPAMJJ0@Z
return ErrVal;
}

void ffts(float *ioptr, long M, long Rows, float *Utbl){
00002: 0000 55          PUSH    EBP
00003: 0001 89 E5       MOV     EBP, ESP
00004: 0003 53          PUSH    EBX
00005: 0004 56          PUSH    ESI
00006: 0005 57          PUSH    EDI
00007: 0006 81 EC 00000124 SUB  ESP, 00000124
{
/* Compute in-place complex fft on the rows of the input array	*/
/* INPUTS */
/* M = log2 of fft size	*/
/* *ioptr = input data array	*/
/* *Utbl = cosine table	*/
/* Rows = number of rows in ioptr array (use Rows of 1 if ioptr is a 1 dimensional array)	*/
/* OUTPUTS */
/* *ioptr = output data array	*/

long 	Flyinc;
long	FlyOffsetA;
long	FlyOffsetAIm;
long	FlyOffsetB;
long	FlyOffsetBIm;
long 	NsameU1;
long 	NsameU2;
long 	NsameU4;
long 	diffUcnt;
long 	LoopCnt;

float	scale;
float	fly0r;
float	fly0i;
float	fly1r;
float	fly1i;
float	fly2r;
float	fly2i;
float	fly3r;
float	fly3i;
float	fly4r;
float	fly4i;
float	fly5r;
float	fly5i;
float	fly6r;
float	fly6i;
float	fly7r;
float	fly7i;
float	U0r;
float	U0i;
float	U1r;
float	U1i;
float	U2r;
float	U2i;
float	U3r;
float	U3i;
float	t0r;
float	t0i;
float	t1r;
float	t1i;

float	*fly0P;
float	*fly1P;
float	*fly2P;
float	*fly3P;

float	*U0rP;
float	*U0iP;
float	*U1rP;
float	*U1iP;
float	*U2rP;
float	*U2iP;
float	*IOP;
long	U3offset;

long 	stage;
long 	NdiffU;
long 	LoopN;

const long BRshift = MAXMROOT - (M>>1);
00009: 000C 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00012: 000F C7 85 FFFFFF6800000009 MOV DWORD PTR FFFFFF68[EBP], 00000009
00010: 0019 D1 FA       SAR     EDX, 00000001
00011: 001B             NOOP    
00013: 001B 29 95 FFFFFF68SUB   DWORD PTR FFFFFF68[EBP], EDX
00014: 0021             NOOP    
const long BRshift = MAXMROOT - (M>>1);
const long Nrems2 = Ntbl[M-(M>>1)+1];
00016: 0021 8B 5D 0C    MOV     EBX, DWORD PTR 0000000C[EBP]
00017: 0024 29 D3       SUB     EBX, EDX
00018: 0026             NOOP    
00019: 0026 8B 04 9D 00000004 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+00000004[EBX*4]
00020: 002D 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
const long Nrems2 = Ntbl[M-(M>>1)+1];
const long Nroot_1_ColInc = (Ntbl[M-1]-Ntbl[M-(M>>1)])*2;
00022: 0033 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00023: 0036 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
00036: 003D B9 00000003 MOV     ECX, 00000003
00024: 0042 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
00025: 0048 2B 04 9D 00000000 SUB EAX, DWORD PTR ?Ntbl@@3PBJB[EBX*4]
00026: 004F 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
00027: 0055 D1 A5 FFFFFF6CSHL   DWORD PTR FFFFFF6C[EBP], 00000001
00028: 005B             NOOP    
const long Nroot_1_ColInc = (Ntbl[M-1]-Ntbl[M-(M>>1)])*2;

scale = 2.0;
00030: 005B 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00031: 005E 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
00032: 0064 D1 BD FFFFFF70SAR   DWORD PTR FFFFFF70[EBP], 00000001
00033: 006A             NOOP    
00034: 006A 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00035: 006D 83 C2 FF    ADD     EDX, FFFFFFFF
00037: 0070 89 D0       MOV     EAX, EDX
00038: 0072 99          CDQ     
00039: 0073 F7 F9       IDIV    ECX
00040: 0075 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
00041: 007B             NOOP    
scale = 2.0;
for (;Rows>0;Rows--){
00043: 007B E9 000018BB JMP     L0001
00044: 0080     L0002
for (;Rows>0;Rows--){

FlyOffsetA = Ntbl[M] * (2/2);
00046: 0080 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00047: 0083 8B 04 8D 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ECX*4]
00048: 008A 89 85 FFFFFED8MOV   DWORD PTR FFFFFED8[EBP], EAX
FlyOffsetA = Ntbl[M] * (2/2);
FlyOffsetAIm = FlyOffsetA + 1;
00050: 0090 89 85 FFFFFED0MOV   DWORD PTR FFFFFED0[EBP], EAX
00051: 0096 83 85 FFFFFED001 ADD DWORD PTR FFFFFED0[EBP], 00000001
00052: 009D             NOOP    
FlyOffsetAIm = FlyOffsetA + 1;
FlyOffsetB = FlyOffsetA + 2;
00054: 009D 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00055: 00A3 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
00056: 00A9 83 85 FFFFFEE802 ADD DWORD PTR FFFFFEE8[EBP], 00000002
00057: 00B0             NOOP    
FlyOffsetB = FlyOffsetA + 2;
FlyOffsetBIm = FlyOffsetB + 1;
00059: 00B0 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00060: 00B6 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
00061: 00BC 83 85 FFFFFEEC01 ADD DWORD PTR FFFFFEEC[EBP], 00000001
00062: 00C3             NOOP    
FlyOffsetBIm = FlyOffsetB + 1;

/* BitrevR2 ** bit reverse and first radix 2 stage ******/

for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
00064: 00C3 C7 85 FFFFFF5400000000 MOV DWORD PTR FFFFFF54[EBP], 00000000
00065: 00CD 8B 75 0C    MOV     ESI, DWORD PTR 0000000C[EBP]
00068: 00D0 8B 85 FFFFFF6CMOV   EAX, DWORD PTR FFFFFF6C[EBP]
00066: 00D6 D1 FE       SAR     ESI, 00000001
00067: 00D8             NOOP    
00069: 00D8 89 85 FFFFFF00MOV   DWORD PTR FFFFFF00[EBP], EAX
00070: 00DE C1 A5 FFFFFF0002 SHL DWORD PTR FFFFFF00[EBP], 00000002
00071: 00E5             NOOP    
00072: 00E5 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00073: 00E8 89 85 FFFFFEF4MOV   DWORD PTR FFFFFEF4[EBP], EAX
00074: 00EE 2B 85 FFFFFF70SUB   EAX, DWORD PTR FFFFFF70[EBP]
00075: 00F4 89 85 FFFFFEF4MOV   DWORD PTR FFFFFEF4[EBP], EAX
00076: 00FA             NOOP    
00077: 00FA E9 0000040E JMP     L0003
00078: 00FF     L0004
for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
	for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
00080: 00FF 8B 04 B5 FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ESI*4]
00099: 0106 B9 00000002 MOV     ECX, 00000002
00081: 010B 89 85 FFFFFF40MOV   DWORD PTR FFFFFF40[EBP], EAX
00082: 0111 83 85 FFFFFF40FF ADD DWORD PTR FFFFFF40[EBP], FFFFFFFF
00083: 0118             NOOP    
00084: 0118 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00085: 011B 89 85 FFFFFEF0MOV   DWORD PTR FFFFFEF0[EBP], EAX
00086: 0121 D1 BD FFFFFEF0SAR   DWORD PTR FFFFFEF0[EBP], 00000001
00087: 0127             NOOP    
00088: 0127 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00089: 012A 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
00090: 0130 03 85 FFFFFF00ADD   EAX, DWORD PTR FFFFFF00[EBP]
00091: 0136 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
00092: 013C             NOOP    
00093: 013C 8B 85 FFFFFF54MOV   EAX, DWORD PTR FFFFFF54[EBP]
00094: 0142 89 85 FFFFFEF8MOV   DWORD PTR FFFFFEF8[EBP], EAX
00095: 0148 C1 A5 FFFFFEF802 SHL DWORD PTR FFFFFEF8[EBP], 00000002
00096: 014F             NOOP    
00097: 014F 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00098: 0152 83 C2 01    ADD     EDX, 00000001
00100: 0155 89 D0       MOV     EAX, EDX
00101: 0157 99          CDQ     
00102: 0158 F7 F9       IDIV    ECX
00103: 015A 89 85 FFFFFF04MOV   DWORD PTR FFFFFF04[EBP], EAX
00104: 0160             NOOP    
00105: 0160 E9 0000038C JMP     L0005
00106: 0165     L0006
for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
		LoopCnt = (Ntbl[(M>>1)-1]-1);
00108: 0165 8B 8D FFFFFEF0MOV   ECX, DWORD PTR FFFFFEF0[EBP]
00109: 016B 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
00110: 0172 89 85 FFFFFF0CMOV   DWORD PTR FFFFFF0C[EBP], EAX
00111: 0178 83 85 FFFFFF0CFF ADD DWORD PTR FFFFFF0C[EBP], FFFFFFFF
00112: 017F             NOOP    
LoopCnt = (Ntbl[(M>>1)-1]-1);
		fly0P = ioptr+ Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
00114: 017F 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
00117: 0185 8B 8D FFFFFF68MOV   ECX, DWORD PTR FFFFFF68[EBP]
00115: 018B 8A 90 00000000 MOV  DL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00125: 0191 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
00116: 0197 81 E2 000000FF AND  EDX, 000000FF
00118: 019D D3 FA       SAR     EDX, ECX
00119: 019F C1 E2 04    SHL     EDX, 00000004
00124: 01A2 8B 8D FFFFFF04MOV   ECX, DWORD PTR FFFFFF04[EBP]
00120: 01A8 03 95 FFFFFEFCADD   EDX, DWORD PTR FFFFFEFC[EBP]
00121: 01AE 03 95 FFFFFEF8ADD   EDX, DWORD PTR FFFFFEF8[EBP]
00122: 01B4             NOOP    
fly0P = ioptr+ Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
		IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
00126: 01B4 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
00127: 01BA D3 A5 FFFFFF30SHL   DWORD PTR FFFFFF30[EBP], ECX
00128: 01C0 C1 A5 FFFFFF3003 SHL DWORD PTR FFFFFF30[EBP], 00000003
00129: 01C7 8B 85 FFFFFF30MOV   EAX, DWORD PTR FFFFFF30[EBP]
00130: 01CD 03 45 08    ADD     EAX, DWORD PTR 00000008[EBP]
00131: 01D0 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
00132: 01D6 03 85 FFFFFEF8ADD   EAX, DWORD PTR FFFFFEF8[EBP]
00133: 01DC 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
00134: 01E2             NOOP    
IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
		fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
00136: 01E2 8B 85 FFFFFF0CMOV   EAX, DWORD PTR FFFFFF0C[EBP]
00139: 01E8 8B 8D FFFFFF68MOV   ECX, DWORD PTR FFFFFF68[EBP]
00137: 01EE 8A 98 00000000 MOV  BL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00145: 01F4 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00138: 01F6 81 E3 000000FF AND  EBX, 000000FF
00140: 01FC D3 FB       SAR     EBX, ECX
00141: 01FE C1 E3 04    SHL     EBX, 00000004
00142: 0201 03 9D FFFFFF30ADD   EBX, DWORD PTR FFFFFF30[EBP]
00143: 0207             NOOP    
fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
		fly0r = *(fly0P);
00146: 0207 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly0P);
		fly0i = *(fly0P+1);
00148: 020D 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00149: 0210 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly0P+1);
		fly1r = *(fly0P+FlyOffsetA);
00151: 0213 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00152: 0219 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00153: 021C 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
		fly1i = *(fly0P+FlyOffsetAIm);
00155: 021F 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00156: 0225 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00157: 0228 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
00158: 022B 8B BD FFFFFF78MOV   EDI, DWORD PTR FFFFFF78[EBP]
00159: 0231 C1 E7 02    SHL     EDI, 00000002
00160: 0234 E9 000001E7 JMP     L0019
00161: 0239     L0008
fly1i = *(fly0P+FlyOffsetAIm);
		for (; LoopCnt > LoopN;){
			fly2r = *(fly0P+2);
00163: 0239 8B 42 08    MOV     EAX, DWORD PTR 00000008[EDX]
00164: 023C 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly0P+2);
			fly2i = *(fly0P+(2+1));
00166: 023F 8B 42 0C    MOV     EAX, DWORD PTR 0000000C[EDX]
00167: 0242 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly0P+(2+1));
			fly3r = *(fly0P+FlyOffsetB);
00169: 0245 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00170: 024B 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00171: 024E 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
			fly3i = *(fly0P+FlyOffsetBIm);
00173: 0251 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00174: 0257 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00175: 025A 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);
			fly4r = *(fly1P);
00177: 025D 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00178: 025F 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly1P);
			fly4i = *(fly1P+1);
00180: 0262 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00181: 0265 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly1P+1);
			fly5r = *(fly1P+FlyOffsetA);
00183: 0268 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00184: 026E 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00185: 0271 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly5r = *(fly1P+FlyOffsetA);
			fly5i = *(fly1P+FlyOffsetAIm);
00187: 0274 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00188: 027A 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00189: 027D 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly5i = *(fly1P+FlyOffsetAIm);
			fly6r = *(fly1P+2);
00191: 0280 8B 43 08    MOV     EAX, DWORD PTR 00000008[EBX]
00192: 0283 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly1P+2);
			fly6i = *(fly1P+(2+1));
00194: 0286 8B 43 0C    MOV     EAX, DWORD PTR 0000000C[EBX]
00195: 0289 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly1P+(2+1));
			fly7r = *(fly1P+FlyOffsetB);
00197: 028C 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00198: 0292 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00199: 0295 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
fly7r = *(fly1P+FlyOffsetB);
			fly7i = *(fly1P+FlyOffsetBIm);
00201: 0298 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00202: 029E 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00203: 02A1 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
fly7i = *(fly1P+FlyOffsetBIm);
			
			t0r	= fly0r + fly1r;
00205: 02A4 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00206: 02A7 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00207: 02AD D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r	= fly0r + fly1r;
			t0i	= fly0i + fly1i;
00209: 02B0 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00210: 02B3 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00211: 02B6 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i	= fly0i + fly1i;
			fly1r = fly0r - fly1r;
00213: 02B9 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00214: 02BC D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00215: 02C2 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r - fly1r;
			fly1i = fly0i - fly1i;
00217: 02C5 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00218: 02C8 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00219: 02CB D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - fly1i;
			t1r = fly2r + fly3r;
00221: 02CE D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00222: 02D1 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00223: 02D4 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = fly2r + fly3r;
			t1i = fly2i + fly3i;
00225: 02D7 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00226: 02DA D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00227: 02DD D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = fly2i + fly3i;
			fly3r = fly2r - fly3r;
00229: 02E0 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00230: 02E3 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00231: 02E6 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly2r - fly3r;
			fly3i = fly2i - fly3i;
00233: 02E9 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00234: 02EC D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00235: 02EF D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly2i - fly3i;
			fly0r = fly4r + fly5r;
00237: 02F2 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00238: 02F5 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00239: 02F8 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly4r + fly5r;
			fly0i = fly4i + fly5i;
00241: 02FE D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00242: 0301 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
00243: 0304 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly4i + fly5i;
			fly5r = fly4r - fly5r;
00245: 0307 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00246: 030A D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00247: 030D D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly4r - fly5r;
			fly5i = fly4i - fly5i;
00249: 0310 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00250: 0313 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00251: 0316 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly4i - fly5i;
			fly2r = fly6r + fly7r;
00253: 0319 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00254: 031C D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
00255: 031F D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly6r + fly7r;
			fly2i = fly6i + fly7i;
00257: 0322 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00258: 0325 D8 45 B0    FADD    DWORD PTR FFFFFFB0[EBP]
00259: 0328 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly6i + fly7i;
			fly7r = fly6r - fly7r;
00261: 032B D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00262: 032E D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
00263: 0331 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = fly6r - fly7r;
			fly7i = fly6i - fly7i;
00265: 0334 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00266: 0337 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
00267: 033A D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = fly6i - fly7i;

			*(fly1P) = t0r;
00269: 033D 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
00270: 0340 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t0r;
			*(fly1P+1) = t0i;
00272: 0342 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
00273: 0345 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P+1) = t0i;
			*(fly1P+2) = fly1r;
00275: 0348 8B 45 84    MOV     EAX, DWORD PTR FFFFFF84[EBP]
00276: 034B 89 43 08    MOV     DWORD PTR 00000008[EBX], EAX
*(fly1P+2) = fly1r;
			*(fly1P+(2+1)) = fly1i;
00278: 034E 8B 45 88    MOV     EAX, DWORD PTR FFFFFF88[EBP]
00279: 0351 89 43 0C    MOV     DWORD PTR 0000000C[EBX], EAX
*(fly1P+(2+1)) = fly1i;
			*(fly1P+FlyOffsetA) = t1r;
00281: 0354 8B 4D E4    MOV     ECX, DWORD PTR FFFFFFE4[EBP]
00282: 0357 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00283: 035D 89 0C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], ECX
*(fly1P+FlyOffsetA) = t1r;
			*(fly1P+FlyOffsetAIm) = t1i;
00285: 0360 8B 4D E8    MOV     ECX, DWORD PTR FFFFFFE8[EBP]
00286: 0363 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00287: 0369 89 0C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], ECX
*(fly1P+FlyOffsetAIm) = t1i;
			*(fly1P+FlyOffsetB) = fly3r;
00289: 036C 8B 4D 94    MOV     ECX, DWORD PTR FFFFFF94[EBP]
00290: 036F 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00291: 0375 89 0C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], ECX
*(fly1P+FlyOffsetB) = fly3r;
			*(fly1P+FlyOffsetBIm) = fly3i;
00293: 0378 8B 4D 98    MOV     ECX, DWORD PTR FFFFFF98[EBP]
00294: 037B 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00295: 0381 89 0C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], ECX
*(fly1P+FlyOffsetBIm) = fly3i;
			*(fly0P) = fly0r;
00297: 0384 8B 85 FFFFFF7CMOV   EAX, DWORD PTR FFFFFF7C[EBP]
00298: 038A 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = fly0r;
			*(fly0P+1) = fly0i;
00300: 038C 8B 45 80    MOV     EAX, DWORD PTR FFFFFF80[EBP]
00301: 038F 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P+1) = fly0i;
			*(fly0P+2) = fly5r;
00303: 0392 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
00304: 0395 89 42 08    MOV     DWORD PTR 00000008[EDX], EAX
*(fly0P+2) = fly5r;
			*(fly0P+(2+1)) = fly5i;
00306: 0398 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
00307: 039B 89 42 0C    MOV     DWORD PTR 0000000C[EDX], EAX
*(fly0P+(2+1)) = fly5i;
			*(fly0P+FlyOffsetA) = fly2r;
00309: 039E 8B 4D 8C    MOV     ECX, DWORD PTR FFFFFF8C[EBP]
00310: 03A1 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00311: 03A7 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetA) = fly2r;
			*(fly0P+FlyOffsetAIm) = fly2i;
00313: 03AA 8B 4D 90    MOV     ECX, DWORD PTR FFFFFF90[EBP]
00314: 03AD 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00315: 03B3 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetAIm) = fly2i;
			*(fly0P+FlyOffsetB) = fly7r;
00317: 03B6 8B 4D B4    MOV     ECX, DWORD PTR FFFFFFB4[EBP]
00318: 03B9 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00319: 03BF 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetB) = fly7r;
			*(fly0P+FlyOffsetBIm) = fly7i;
00321: 03C2 8B 4D B8    MOV     ECX, DWORD PTR FFFFFFB8[EBP]
00322: 03C5 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00323: 03CB 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetBIm) = fly7i;

			fly0P -= Nrems2;
00325: 03CE 29 FA       SUB     EDX, EDI
fly0P -= Nrems2;
			fly0r = *(fly0P);
00327: 03D0 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00328: 03D2 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly0P);
			fly0i = *(fly0P+1);
00330: 03D8 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00331: 03DB 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly0P+1);
			fly1r = *(fly0P+FlyOffsetA);
00333: 03DE 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00334: 03E4 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00335: 03E7 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
			fly1i = *(fly0P+FlyOffsetAIm);
00337: 03EA 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00338: 03F0 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00339: 03F3 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly0P+FlyOffsetAIm);
			LoopCnt -= 1;
00341: 03F6 83 AD FFFFFF0C01 SUB DWORD PTR FFFFFF0C[EBP], 00000001
LoopCnt -= 1;
			fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
00343: 03FD 8B 85 FFFFFF0CMOV   EAX, DWORD PTR FFFFFF0C[EBP]
00346: 0403 8B 8D FFFFFF68MOV   ECX, DWORD PTR FFFFFF68[EBP]
00344: 0409 8A 98 00000000 MOV  BL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00345: 040F 81 E3 000000FF AND  EBX, 000000FF
00347: 0415 D3 FB       SAR     EBX, ECX
00348: 0417 C1 E3 04    SHL     EBX, 00000004
00349: 041A 03 9D FFFFFF30ADD   EBX, DWORD PTR FFFFFF30[EBP]
00350: 0420     L0019
00351: 0420             NOOP    
fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
		};
00353: 0420     L0007
00354: 0420 8B 85 FFFFFF0CMOV   EAX, DWORD PTR FFFFFF0C[EBP]
00355: 0426 3B 85 FFFFFF40CMP   EAX, DWORD PTR FFFFFF40[EBP]
00356: 042C 0F 8F FFFFFE07 JG   L0008
};
		fly2r = *(fly0P+2);
00358: 0432 8B 42 08    MOV     EAX, DWORD PTR 00000008[EDX]
00359: 0435 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly0P+2);
		fly2i = *(fly0P+(2+1));
00361: 0438 8B 42 0C    MOV     EAX, DWORD PTR 0000000C[EDX]
00362: 043B 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly0P+(2+1));
		fly3r = *(fly0P+FlyOffsetB);
00364: 043E 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00365: 0444 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00366: 0447 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
		fly3i = *(fly0P+FlyOffsetBIm);
00368: 044A 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00369: 0450 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00370: 0453 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);

		t0r   = fly0r + fly1r;
00372: 0456 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00373: 0459 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00374: 045F D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r   = fly0r + fly1r;
		t0i   = fly0i + fly1i;
00376: 0462 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00377: 0465 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00378: 0468 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i   = fly0i + fly1i;
		fly1r = fly0r - fly1r;
00380: 046B D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00381: 046E D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00382: 0474 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r - fly1r;
		fly1i = fly0i - fly1i;
00384: 0477 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00385: 047A D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00386: 047D D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - fly1i;
		t1r   = fly2r + fly3r;
00388: 0480 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00389: 0483 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00390: 0486 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r   = fly2r + fly3r;
		t1i   = fly2i + fly3i;
00392: 0489 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00393: 048C D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00394: 048F D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i   = fly2i + fly3i;
		fly3r = fly2r - fly3r;
00396: 0492 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00397: 0495 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00398: 0498 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly2r - fly3r;
		fly3i = fly2i - fly3i;
00400: 049B D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00401: 049E D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00402: 04A1 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly2i - fly3i;

		*(fly0P) = t0r;
00404: 04A4 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
00405: 04A7 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
		*(fly0P+1) = t0i;
00407: 04A9 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
00408: 04AC 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P+1) = t0i;
		*(fly0P+2) = fly1r;
00410: 04AF 8B 45 84    MOV     EAX, DWORD PTR FFFFFF84[EBP]
00411: 04B2 89 42 08    MOV     DWORD PTR 00000008[EDX], EAX
*(fly0P+2) = fly1r;
		*(fly0P+(2+1)) = fly1i;
00413: 04B5 8B 45 88    MOV     EAX, DWORD PTR FFFFFF88[EBP]
00414: 04B8 89 42 0C    MOV     DWORD PTR 0000000C[EDX], EAX
*(fly0P+(2+1)) = fly1i;
		*(fly0P+FlyOffsetA) = t1r;
00416: 04BB 8B 4D E4    MOV     ECX, DWORD PTR FFFFFFE4[EBP]
00417: 04BE 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00418: 04C4 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetA) = t1r;
		*(fly0P+FlyOffsetAIm) = t1i;
00420: 04C7 8B 4D E8    MOV     ECX, DWORD PTR FFFFFFE8[EBP]
00421: 04CA 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00422: 04D0 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetAIm) = t1i;
		*(fly0P+FlyOffsetB) = fly3r;
00424: 04D3 8B 4D 94    MOV     ECX, DWORD PTR FFFFFF94[EBP]
00425: 04D6 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00426: 04DC 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetB) = fly3r;
		*(fly0P+FlyOffsetBIm) = fly3i;
00428: 04DF 8B 4D 98    MOV     ECX, DWORD PTR FFFFFF98[EBP]
00429: 04E2 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00430: 04E8 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly0P+FlyOffsetBIm) = fly3i;

	};
00432: 04EB FF 8D FFFFFF40DEC   DWORD PTR FFFFFF40[EBP]
00433: 04F1     L0005
00434: 04F1 83 BD FFFFFF4000 CMP DWORD PTR FFFFFF40[EBP], 00000000
00435: 04F8 0F 8D FFFFFC67 JGE  L0006
};
};
00437: 04FE 8B 04 B5 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ESI*4]
00438: 0505 D1 E0       SHL     EAX, 00000001
00439: 0507 01 85 FFFFFF54ADD   DWORD PTR FFFFFF54[EBP], EAX
00440: 050D     L0003
00441: 050D 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
00442: 0513 8B 04 85 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
00443: 051A D1 E0       SHL     EAX, 00000001
00444: 051C 39 85 FFFFFF54CMP   DWORD PTR FFFFFF54[EBP], EAX
00445: 0522 0F 8C FFFFFBD7 JL   L0004
};



/**** FFTC  **************/

NdiffU = 2;
00447: 0528 C7 85 FFFFFF6400000002 MOV DWORD PTR FFFFFF64[EBP], 00000002
NdiffU = 2;
Flyinc =  (NdiffU);
00449: 0532 C7 85 FFFFFF4800000002 MOV DWORD PTR FFFFFF48[EBP], 00000002
Flyinc =  (NdiffU);

NsameU4 = Ntbl[M]/4;
00451: 053C BB 00000004 MOV     EBX, 00000004
00452: 0541 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00453: 0544 8B 04 8D 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ECX*4]
00454: 054B 99          CDQ     
00455: 054C F7 FB       IDIV    EBX
00456: 054E 89 85 FFFFFF38MOV   DWORD PTR FFFFFF38[EBP], EAX
00457: 0554             NOOP    
NsameU4 = Ntbl[M]/4;
LoopN = Ntbl[M-3];
00459: 0554 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00460: 0557 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
00461: 055E 89 85 FFFFFF40MOV   DWORD PTR FFFFFF40[EBP], EAX
LoopN = Ntbl[M-3];

stage = ((M-1)/3);
00463: 0564 8B 85 FFFFFF74MOV   EAX, DWORD PTR FFFFFF74[EBP]
00464: 056A 89 85 FFFFFF54MOV   DWORD PTR FFFFFF54[EBP], EAX
stage = ((M-1)/3);
if ( (M-1-(stage * 3)) != 0 ){
00468: 0570 8D 51 FF    LEA     EDX, DWORD PTR FFFFFFFF[ECX]
00466: 0573 6B C0 03    IMUL    EAX, 00000003
00467: 0576             NOOP    
00469: 0576 29 C2       SUB     EDX, EAX
00470: 0578             NOOP    
00471: 0578 09 D2       OR      EDX, EDX
00472: 057A 0F 84 000005C2 JE   L0009
if ( (M-1-(stage * 3)) != 0 ){
	FlyOffsetA =  Flyinc << 2;
00474: 0580 C7 85 FFFFFED800000008 MOV DWORD PTR FFFFFED8[EBP], 00000008
FlyOffsetA =  Flyinc << 2;
	FlyOffsetB =  FlyOffsetA << 1;
00476: 058A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00477: 0590 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
00478: 0596 D1 A5 FFFFFEE8SHL   DWORD PTR FFFFFEE8[EBP], 00000001
00479: 059C             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
	FlyOffsetAIm =  FlyOffsetA + 1;
00481: 059C 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00482: 05A2 89 85 FFFFFED0MOV   DWORD PTR FFFFFED0[EBP], EAX
00483: 05A8 83 85 FFFFFED001 ADD DWORD PTR FFFFFED0[EBP], 00000001
00484: 05AF             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
	FlyOffsetBIm =  FlyOffsetB + 1;
	if ( (M-1-(stage * 3)) == 1 ){
00486: 05AF 83 FA 01    CMP     EDX, 00000001
00487: 05B2 0F 85 0000023F JNE  L000A
if ( (M-1-(stage * 3)) == 1 ){
		/* 1 radix 2 stage */

		IOP = ioptr;
00489: 05B8 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00494: 05BB BF 00000008 MOV     EDI, 00000008
00490: 05C0 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
IOP = ioptr;
		fly0P = IOP;
00492: 05C6 89 C2       MOV     EDX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
00507: 05C8 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
00495: 05CE 89 D3       MOV     EBX, EDX
00508: 05D0 89 85 FFFFFF0CMOV   DWORD PTR FFFFFF0C[EBP], EAX
00496: 05D6 01 FB       ADD     EBX, EDI
00497: 05D8             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
00499: 05D8 89 D9       MOV     ECX, EBX
00509: 05DA 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00500: 05E0 01 F9       ADD     ECX, EDI
00501: 05E2             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
00503: 05E2 89 CE       MOV     ESI, ECX
00510: 05E4 89 85 FFFFFEDCMOV   DWORD PTR FFFFFEDC[EBP], EAX
00504: 05EA 01 FE       ADD     ESI, EDI
00505: 05EC             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0
			t1	-	-	t1
			f2	-  1-	f5
			f1	- -i-	f7
			f4	-	-	f4
			f0	-	-	f0
			f6	-  1-	f2
			f3	- -i-	f1
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
00511: 05EC C1 A5 FFFFFEDC02 SHL DWORD PTR FFFFFEDC[EBP], 00000002
00512: 05F3             NOOP    
00513: 05F3 E9 000001D5 JMP     L000B
00514: 05F8     L000C
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
00516: 05F8 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00517: 05FA 89 45 DC    MOV     DWORD PTR FFFFFFDC[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
00519: 05FD 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00520: 0600 89 45 E0    MOV     DWORD PTR FFFFFFE0[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
00522: 0603 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00523: 0605 89 45 E4    MOV     DWORD PTR FFFFFFE4[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
00525: 0608 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00526: 060B 89 45 E8    MOV     DWORD PTR FFFFFFE8[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
00528: 060E 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
00529: 0610 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
00531: 0613 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
00532: 0616 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
00534: 0619 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
00535: 061B 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
00537: 061E 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
00538: 0621 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
00540: 0624 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00541: 062A 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00542: 062D 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
00544: 0630 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00545: 0636 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00546: 0639 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
00548: 063C 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00549: 0642 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00550: 0645 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
00552: 064B 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00553: 0651 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00554: 0654 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
00556: 0657 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00557: 065D 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00558: 0660 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
00560: 0663 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00561: 0669 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00562: 066C 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
00564: 066F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00565: 0675 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00566: 0678 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
00568: 067B 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00569: 0681 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00570: 0684 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
		
			fly5r = t0r - fly2r;
00572: 0687 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00573: 068A D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
00574: 068D D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
00576: 0690 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00577: 0693 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
00578: 0696 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
00580: 0699 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00581: 069C D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
00582: 069F D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
00584: 06A2 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00585: 06A5 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
00586: 06A8 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = t0i + fly2i;

			fly7r = t1r - fly1i;
00588: 06AB D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00589: 06AE D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
00590: 06B1 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r - fly1i;
			fly7i = t1i + fly1r;
00592: 06B4 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00593: 06B7 D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
00594: 06BA D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i + fly1r;
			t1r = t1r + fly1i;
00596: 06BD D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00597: 06C0 D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
00598: 06C3 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r + fly1i;
			t1i = t1i - fly1r;
00600: 06C6 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00601: 06C9 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
00602: 06CC D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i - fly1r;

			fly2r = fly4r - fly6r;
00604: 06CF D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00605: 06D2 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00606: 06D5 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
00608: 06D8 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00609: 06DB D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00610: 06DE D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
00612: 06E1 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00613: 06E4 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00614: 06E7 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
00616: 06EA D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00617: 06ED D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
00618: 06F0 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i + fly6i;

			fly1r = fly0r - fly3i;
00620: 06F3 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00621: 06F6 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00622: 06FC D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r - fly3i;
			fly1i = fly0i + fly3r;
00624: 06FF D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00625: 0702 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00626: 0705 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i + fly3r;
			fly0r = fly0r + fly3i;
00628: 0708 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00629: 070B D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00630: 0711 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r + fly3i;
			fly0i = fly0i - fly3r;
00632: 0717 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00633: 071A D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00634: 071D D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i - fly3r;

			*(fly2P) = fly5r;
00636: 0720 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
00637: 0723 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
00639: 0725 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
00640: 0728 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly0P) = t0r;
00642: 072B 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
00643: 072E 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
00645: 0730 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
00646: 0733 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;
			*(fly3P) = fly7r;
00648: 0736 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
00649: 0739 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
00651: 073B 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
00652: 073E 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
			*(fly1P) = t1r;
00654: 0741 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
00655: 0744 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
00657: 0746 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
00658: 0749 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;
			*(fly2P + FlyOffsetA) = fly2r;
00660: 074C 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
00661: 074F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00662: 0755 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
00664: 0758 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
00665: 075B 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00666: 0761 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;
			*(fly0P + FlyOffsetA) = fly4r;
00668: 0764 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
00669: 0767 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00670: 076D 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly4r;
			*(fly0P + FlyOffsetAIm) = fly4i;
00672: 0770 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
00673: 0773 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00674: 0779 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly4i;
			*(fly3P + FlyOffsetA) = fly1r;
00676: 077C 8B 7D 84    MOV     EDI, DWORD PTR FFFFFF84[EBP]
00677: 077F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00678: 0785 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly1r;
			*(fly3P + FlyOffsetAIm) = fly1i;
00680: 0788 8B 7D 88    MOV     EDI, DWORD PTR FFFFFF88[EBP]
00681: 078B 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00682: 0791 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly1i;
			*(fly1P + FlyOffsetA) = fly0r;
00684: 0794 8B BD FFFFFF7CMOV   EDI, DWORD PTR FFFFFF7C[EBP]
00685: 079A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00686: 07A0 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly0r;
			*(fly1P + FlyOffsetAIm) = fly0i;
00688: 07A3 8B 7D 80    MOV     EDI, DWORD PTR FFFFFF80[EBP]
00689: 07A6 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00690: 07AC 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly0i;

			fly0P = (fly0P + FlyOffsetB);
00692: 07AF 03 95 FFFFFEDCADD   EDX, DWORD PTR FFFFFEDC[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
00694: 07B5 03 9D FFFFFEDCADD   EBX, DWORD PTR FFFFFEDC[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
00696: 07BB 03 8D FFFFFEDCADD   ECX, DWORD PTR FFFFFEDC[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
00698: 07C1 03 B5 FFFFFEDCADD   ESI, DWORD PTR FFFFFEDC[EBP]
fly3P = (fly3P + FlyOffsetB);
		};
00700: 07C7 FF 8D FFFFFF0CDEC   DWORD PTR FFFFFF0C[EBP]
00701: 07CD     L000B
00702: 07CD 83 BD FFFFFF0C00 CMP DWORD PTR FFFFFF0C[EBP], 00000000
00703: 07D4 0F 8F FFFFFE1E JG   L000C
};

		NsameU4 >>= 1;
00705: 07DA D1 BD FFFFFF38SAR   DWORD PTR FFFFFF38[EBP], 00000001
NsameU4 >>= 1;
		LoopN >>= 1;
00707: 07E0 D1 BD FFFFFF40SAR   DWORD PTR FFFFFF40[EBP], 00000001
LoopN >>= 1;
		NdiffU <<= 1;
00709: 07E6 D1 A5 FFFFFF64SHL   DWORD PTR FFFFFF64[EBP], 00000001
NdiffU <<= 1;
		Flyinc = Flyinc << 1;
00711: 07EC D1 A5 FFFFFF48SHL   DWORD PTR FFFFFF48[EBP], 00000001
Flyinc = Flyinc << 1;
	}
00713: 07F2 E9 0000034B JMP     L000D
00714: 07F7     L000A
}
	else{
		/* 1 radix 4 stage */
		IOP = ioptr;
00716: 07F7 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00725: 07FA BF 00000008 MOV     EDI, 00000008
00717: 07FF 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
IOP = ioptr;

		U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
00719: 0805 C7 45 D4 3F3504F3 MOV DWORD PTR FFFFFFD4[EBP], 3F3504F3
U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
		U3i = U3r;	
00721: 080C C7 45 D8 3F3504F3 MOV DWORD PTR FFFFFFD8[EBP], 3F3504F3
U3i = U3r;	
		fly0P = IOP;
00723: 0813 89 C2       MOV     EDX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
00738: 0815 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
00726: 081B 89 D3       MOV     EBX, EDX
00739: 081D 89 85 FFFFFF0CMOV   DWORD PTR FFFFFF0C[EBP], EAX
00727: 0823 01 FB       ADD     EBX, EDI
00728: 0825             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
00730: 0825 89 D9       MOV     ECX, EBX
00740: 0827 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00731: 082D 01 F9       ADD     ECX, EDI
00732: 082F             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
00734: 082F 89 CE       MOV     ESI, ECX
00741: 0831 89 85 FFFFFEE0MOV   DWORD PTR FFFFFEE0[EBP], EAX
00735: 0837 01 FE       ADD     ESI, EDI
00736: 0839             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0	-	-	t0
			t1	-	-	t1	-	-	t1
			f2	-  1-	f5	-	-	f5
			f1	- -i-	f7	-	-	f7
			f4	-	-	f4	-  1-	f6
			f0	-	-	f0	-U3	-	f3
			f6	-  1-	f2	- -i-	f4
			f3	- -i-	f1	-U3a-	f2
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
00742: 0839 C1 A5 FFFFFEE002 SHL DWORD PTR FFFFFEE0[EBP], 00000002
00743: 0840             NOOP    
00744: 0840 E9 000002D4 JMP     L000E
00745: 0845     L000F
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
00747: 0845 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00748: 0847 89 45 DC    MOV     DWORD PTR FFFFFFDC[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
00750: 084A 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00751: 084D 89 45 E0    MOV     DWORD PTR FFFFFFE0[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
00753: 0850 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00754: 0852 89 45 E4    MOV     DWORD PTR FFFFFFE4[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
00756: 0855 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00757: 0858 89 45 E8    MOV     DWORD PTR FFFFFFE8[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
00759: 085B 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
00760: 085D 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
00762: 0860 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
00763: 0863 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
00765: 0866 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
00766: 0868 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
00768: 086B 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
00769: 086E 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
00771: 0871 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00772: 0877 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00773: 087A 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
00775: 087D 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00776: 0883 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00777: 0886 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
00779: 0889 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00780: 088F 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00781: 0892 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
00783: 0898 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00784: 089E 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00785: 08A1 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
00787: 08A4 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00788: 08AA 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00789: 08AD 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
00791: 08B0 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00792: 08B6 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00793: 08B9 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
00795: 08BC 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00796: 08C2 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00797: 08C5 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
00799: 08C8 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00800: 08CE 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00801: 08D1 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
	
			fly5r = t0r - fly2r;
00803: 08D4 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00804: 08D7 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
00805: 08DA D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
00807: 08DD D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00808: 08E0 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
00809: 08E3 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
00811: 08E6 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00812: 08E9 D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
00813: 08EC D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
00815: 08EF D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00816: 08F2 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
00817: 08F5 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = t0i + fly2i;
	
			fly7r = t1r - fly1i;
00819: 08F8 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00820: 08FB D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
00821: 08FE D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r - fly1i;
			fly7i = t1i + fly1r;
00823: 0901 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00824: 0904 D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
00825: 0907 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i + fly1r;
			t1r = t1r + fly1i;
00827: 090A D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00828: 090D D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
00829: 0910 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r + fly1i;
			t1i = t1i - fly1r;
00831: 0913 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00832: 0916 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
00833: 0919 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i - fly1r;
	
			fly2r = fly4r - fly6r;
00835: 091C D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00836: 091F D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00837: 0922 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
00839: 0925 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00840: 0928 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00841: 092B D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
00843: 092E D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00844: 0931 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00845: 0934 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
00847: 0937 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00848: 093A D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
00849: 093D D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i + fly6i;
	
			fly1r = fly0r - fly3i;
00851: 0940 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00852: 0943 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00853: 0949 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r - fly3i;
			fly1i = fly0i + fly3r;
00855: 094C D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00856: 094F D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00857: 0952 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i + fly3r;
			fly0r = fly0r + fly3i;
00859: 0955 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00860: 0958 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00861: 095E D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r + fly3i;
			fly0i = fly0i - fly3r;
00863: 0964 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00864: 0967 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00865: 096A D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i - fly3r;
	
	
			fly6r = t0r - fly4r;
00867: 096D D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00868: 0970 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
00869: 0973 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = t0r - fly4r;
			fly6i = t0i - fly4i;
00871: 0976 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00872: 0979 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
00873: 097C D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = t0i - fly4i;
			t0r = t0r + fly4r;
00875: 097F D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00876: 0982 D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
00877: 0985 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = t0r + fly4r;
			t0i = t0i + fly4i;
00879: 0988 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00880: 098B D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
00881: 098E D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = t0i + fly4i;
	
			fly3r = fly5r - fly2i;
00883: 0991 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00884: 0994 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
00885: 0997 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly5r - fly2i;
			fly3i = fly5i + fly2r;
00887: 099A D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00888: 099D D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
00889: 09A0 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly5i + fly2r;
			fly5r = fly5r + fly2i;
00891: 09A3 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00892: 09A6 D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
00893: 09A9 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r + fly2i;
			fly5i = fly5i - fly2r;
00895: 09AC D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00896: 09AF D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
00897: 09B2 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i - fly2r;
	
			fly4r = t1r - U3r * fly0r;
00899: 09B5 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00900: 09BB D8 0D 00000000 FMUL DWORD PTR .data+000001a8
00901: 09C1 D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
00902: 09C4 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r - U3i * fly0i;
00904: 09C7 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00905: 09CA D8 0D 00000000 FMUL DWORD PTR .data+000001ac
00906: 09D0 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00907: 09D3 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r - U3i * fly0i;
			fly4i = t1i + U3i * fly0r;
00909: 09D6 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00910: 09DC D8 0D 00000000 FMUL DWORD PTR .data+000001b0
00911: 09E2 D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
00912: 09E5 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = t1i + U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
00914: 09E8 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00915: 09EB D8 0D 00000000 FMUL DWORD PTR .data+000001b4
00916: 09F1 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00917: 09F4 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
00919: 09F7 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
00920: 09FA D8 0D 00000000 FMUL DWORD PTR .data+000001b8
00921: 0A00 D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
00922: 0A03 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
00924: 0A06 D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
00925: 0A09 D8 0D 00000000 FMUL DWORD PTR .data+000001bc
00926: 0A0F D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
00927: 0A12 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly4i;
	
			fly2r = fly7r + U3i * fly1r;
00929: 0A15 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00930: 0A18 D8 0D 00000000 FMUL DWORD PTR .data+000001c0
00931: 0A1E D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
00932: 0A21 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly7r + U3i * fly1r;
			fly2r = fly2r - U3r * fly1i;
00934: 0A24 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00935: 0A27 D8 0D 00000000 FMUL DWORD PTR .data+000001c4
00936: 0A2D D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00937: 0A30 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly2r - U3r * fly1i;
			fly2i = fly7i + U3r * fly1r;
00939: 0A33 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00940: 0A36 D8 0D 00000000 FMUL DWORD PTR .data+000001c8
00941: 0A3C D8 45 B8    FADD    DWORD PTR FFFFFFB8[EBP]
00942: 0A3F D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly7i + U3r * fly1r;
			fly2i = fly2i + U3i * fly1i;
00944: 0A42 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00945: 0A45 D8 0D 00000000 FMUL DWORD PTR .data+000001cc
00946: 0A4B D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00947: 0A4E D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly2i + U3i * fly1i;
			fly7r = scale * fly7r - fly2r;
00949: 0A51 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00950: 0A54 D8 0D 00000000 FMUL DWORD PTR .data+000001d0
00951: 0A5A D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
00952: 0A5D D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = scale * fly7r - fly2r;
			fly7i = scale * fly7i - fly2i;
00954: 0A60 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00955: 0A63 D8 0D 00000000 FMUL DWORD PTR .data+000001d4
00956: 0A69 D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
00957: 0A6C D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = scale * fly7i - fly2i;
	
			*(fly0P + FlyOffsetA) = fly6r;
00959: 0A6F 8B 7D AC    MOV     EDI, DWORD PTR FFFFFFAC[EBP]
00960: 0A72 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00961: 0A78 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
00963: 0A7B 8B 7D B0    MOV     EDI, DWORD PTR FFFFFFB0[EBP]
00964: 0A7E 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00965: 0A84 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
00967: 0A87 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
00968: 0A8A 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
00970: 0A8C 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
00971: 0A8F 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;
			*(fly2P + FlyOffsetA) = fly3r;
00973: 0A92 8B 7D 94    MOV     EDI, DWORD PTR FFFFFF94[EBP]
00974: 0A95 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00975: 0A9B 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly3r;
			*(fly2P + FlyOffsetAIm) = fly3i;
00977: 0A9E 8B 7D 98    MOV     EDI, DWORD PTR FFFFFF98[EBP]
00978: 0AA1 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00979: 0AA7 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly3i;
			*(fly2P) = fly5r;
00981: 0AAA 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
00982: 0AAD 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
00984: 0AAF 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
00985: 0AB2 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly1P + FlyOffsetA) = fly4r;
00987: 0AB5 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
00988: 0AB8 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00989: 0ABE 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
00991: 0AC1 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
00992: 0AC4 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
00993: 0ACA 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
00995: 0ACD 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
00996: 0AD0 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
00998: 0AD2 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
00999: 0AD5 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;
			*(fly3P + FlyOffsetA) = fly2r;
01001: 0AD8 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
01002: 0ADB 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01003: 0AE1 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly2r;
			*(fly3P + FlyOffsetAIm) = fly2i;
01005: 0AE4 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
01006: 0AE7 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01007: 0AED 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly2i;
			*(fly3P) = fly7r;
01009: 0AF0 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
01010: 0AF3 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01012: 0AF5 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
01013: 0AF8 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
		
			fly0P = (fly0P + FlyOffsetB);
01015: 0AFB 03 95 FFFFFEE0ADD   EDX, DWORD PTR FFFFFEE0[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01017: 0B01 03 9D FFFFFEE0ADD   EBX, DWORD PTR FFFFFEE0[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01019: 0B07 03 8D FFFFFEE0ADD   ECX, DWORD PTR FFFFFEE0[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01021: 0B0D 03 B5 FFFFFEE0ADD   ESI, DWORD PTR FFFFFEE0[EBP]
fly3P = (fly3P + FlyOffsetB);

		};
01023: 0B13 FF 8D FFFFFF0CDEC   DWORD PTR FFFFFF0C[EBP]
01024: 0B19     L000E
01025: 0B19 83 BD FFFFFF0C00 CMP DWORD PTR FFFFFF0C[EBP], 00000000
01026: 0B20 0F 8F FFFFFD1F JG   L000F
};

		NsameU4 >>= 2;
01028: 0B26 C1 BD FFFFFF3802 SAR DWORD PTR FFFFFF38[EBP], 00000002
NsameU4 >>= 2;
		LoopN >>= 2;
01030: 0B2D C1 BD FFFFFF4002 SAR DWORD PTR FFFFFF40[EBP], 00000002
LoopN >>= 2;
		NdiffU <<= 2;
01032: 0B34 C1 A5 FFFFFF6402 SHL DWORD PTR FFFFFF64[EBP], 00000002
NdiffU <<= 2;
		Flyinc = Flyinc << 2;
01034: 0B3B C1 A5 FFFFFF4802 SHL DWORD PTR FFFFFF48[EBP], 00000002
Flyinc = Flyinc << 2;
	};
01036: 0B42     L000D
};
};
01038: 0B42     L0009
};

NsameU2 = NsameU4 >> 1;
01040: 0B42 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
01041: 0B48 89 85 FFFFFF1CMOV   DWORD PTR FFFFFF1C[EBP], EAX
01042: 0B4E D1 BD FFFFFF1CSAR   DWORD PTR FFFFFF1C[EBP], 00000001
01043: 0B54             NOOP    
NsameU2 = NsameU4 >> 1;
NsameU1 = NsameU2 >> 1;
01045: 0B54 8B 85 FFFFFF1CMOV   EAX, DWORD PTR FFFFFF1C[EBP]
01046: 0B5A 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
01047: 0B60 D1 BD FFFFFF28SAR   DWORD PTR FFFFFF28[EBP], 00000001
01048: 0B66             NOOP    
NsameU1 = NsameU2 >> 1;
Flyinc <<= 1;
01050: 0B66 D1 A5 FFFFFF48SHL   DWORD PTR FFFFFF48[EBP], 00000001
Flyinc <<= 1;
FlyOffsetA =  Flyinc << 2;
01052: 0B6C 8B 85 FFFFFF48MOV   EAX, DWORD PTR FFFFFF48[EBP]
01053: 0B72 89 85 FFFFFED8MOV   DWORD PTR FFFFFED8[EBP], EAX
01054: 0B78 C1 A5 FFFFFED802 SHL DWORD PTR FFFFFED8[EBP], 00000002
01055: 0B7F             NOOP    
FlyOffsetA =  Flyinc << 2;
FlyOffsetB =  FlyOffsetA << 1;
01057: 0B7F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01058: 0B85 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
01059: 0B8B D1 A5 FFFFFEE8SHL   DWORD PTR FFFFFEE8[EBP], 00000001
01060: 0B91             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
FlyOffsetAIm =  FlyOffsetA + 1;
01062: 0B91 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01063: 0B97 89 85 FFFFFED0MOV   DWORD PTR FFFFFED0[EBP], EAX
01064: 0B9D 83 85 FFFFFED001 ADD DWORD PTR FFFFFED0[EBP], 00000001
01065: 0BA4             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
FlyOffsetBIm =  FlyOffsetB + 1;
01067: 0BA4 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01068: 0BAA 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
01069: 0BB0 83 85 FFFFFEEC01 ADD DWORD PTR FFFFFEEC[EBP], 00000001
01070: 0BB7             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
LoopN >>= 1;
01072: 0BB7 D1 BD FFFFFF40SAR   DWORD PTR FFFFFF40[EBP], 00000001
LoopN >>= 1;
/*   ****** RADIX 8 Stages	*/
for (stage = stage<<1; stage > 0 ; stage--){
01074: 0BBD D1 A5 FFFFFF54SHL   DWORD PTR FFFFFF54[EBP], 00000001
01075: 0BC3 E9 00000D53 JMP     L0010
01076: 0BC8     L0011
for (stage = stage<<1; stage > 0 ; stage--){

	/* an fft stage is done in two parts to ease use of the single quadrant cos table	*/

/*	fftcalc1(iobuf, Utbl, N, NdiffU, LoopN);	*/
	if(!(stage&1)){
01078: 0BC8 8B 85 FFFFFF54MOV   EAX, DWORD PTR FFFFFF54[EBP]
01079: 0BCE 89 85 FFFFFF34MOV   DWORD PTR FFFFFF34[EBP], EAX
01080: 0BD4 81 A5 FFFFFF3400000001 AND DWORD PTR FFFFFF34[EBP], 00000001
01081: 0BDE             NOOP    
01082: 0BDE 83 BD FFFFFF3400 CMP DWORD PTR FFFFFF34[EBP], 00000000
01083: 0BE5 0F 85 000000CC JNE  L0012
if(!(stage&1)){
		U0rP = &Utbl[0];
01085: 0BEB 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01109: 0BEE BB 00000008 MOV     EBX, 00000008
01086: 0BF3 89 85 FFFFFF58MOV   DWORD PTR FFFFFF58[EBP], EAX
U0rP = &Utbl[0];
		U0iP = &Utbl[Ntbl[M-2]];
01088: 0BF9 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01089: 0BFC 8B 04 8D FFFFFFF8 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF8[ECX*4]
01090: 0C03 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
01091: 0C09 C1 A5 FFFFFF3C02 SHL DWORD PTR FFFFFF3C[EBP], 00000002
01092: 0C10 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01093: 0C16 03 45 14    ADD     EAX, DWORD PTR 00000014[EBP]
01094: 0C19 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
01095: 0C1F             NOOP    
U0iP = &Utbl[Ntbl[M-2]];
		U1rP = U0rP;
01097: 0C1F 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01098: 0C22 89 85 FFFFFF5CMOV   DWORD PTR FFFFFF5C[EBP], EAX
U1rP = U0rP;
		U1iP = U0iP;
01100: 0C28 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01101: 0C2E 89 85 FFFFFF60MOV   DWORD PTR FFFFFF60[EBP], EAX
U1iP = U0iP;
		U2rP = U0rP;
01103: 0C34 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01104: 0C37 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
U2rP = U0rP;
		U2iP = U0iP;
01106: 0C3D 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01107: 0C43 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
U2iP = U0iP;
		U3offset = (Ntbl[M]) / 8;
01110: 0C49 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01111: 0C4C 8B 04 8D 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ECX*4]
01112: 0C53 99          CDQ     
01113: 0C54 F7 FB       IDIV    EBX
01114: 0C56 89 85 FFFFFF44MOV   DWORD PTR FFFFFF44[EBP], EAX
01115: 0C5C             NOOP    
U3offset = (Ntbl[M]) / 8;

		IOP = ioptr;
01117: 0C5C 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
01118: 0C5F 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
IOP = ioptr;
	
		U0r =  *U0rP,
01120: 0C65 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01121: 0C68 D9 00       FLD     DWORD PTR 00000000[EAX]
01122: 0C6A D9 55 EC    FST     DWORD PTR FFFFFFEC[EBP]
01123: 0C6D D9 5D BC    FSTP    DWORD PTR FFFFFFBC[EBP]
01124: 0C70 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01125: 0C76 D9 00       FLD     DWORD PTR 00000000[EAX]
01126: 0C78 D9 55 F0    FST     DWORD PTR FFFFFFF0[EBP]
01127: 0C7B D9 5D C0    FSTP    DWORD PTR FFFFFFC0[EBP]
U0r =  *U0rP,
		U0i =  *U0iP;
		U1r =  *U1rP,
01129: 0C7E 8B 45 EC    MOV     EAX, DWORD PTR FFFFFFEC[EBP]
01130: 0C81 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
01131: 0C84 8B 45 F0    MOV     EAX, DWORD PTR FFFFFFF0[EBP]
01132: 0C87 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U1r =  *U1rP,
		U1i =  *U1iP;
		U2r =  *U2rP,
01134: 0C8A 8B 45 EC    MOV     EAX, DWORD PTR FFFFFFEC[EBP]
01135: 0C8D 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
01136: 0C90 8B 45 F0    MOV     EAX, DWORD PTR FFFFFFF0[EBP]
01137: 0C93 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
U2r =  *U2rP,
		U2i =  *U2iP;
		U3r =  *( U2rP + U3offset);
01139: 0C96 8B 8D FFFFFF44MOV   ECX, DWORD PTR FFFFFF44[EBP]
01140: 0C9C 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01144: 0C9F 89 CA       MOV     EDX, ECX
01141: 0CA1 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
01145: 0CA4 C1 E2 02    SHL     EDX, 00000002
01142: 0CA7 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
U3r =  *( U2rP + U3offset);
		U3i =  *( U2iP - U3offset);
01146: 0CAA 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01147: 0CB0 29 D0       SUB     EAX, EDX
01148: 0CB2 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01149: 0CB4 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
U3i =  *( U2iP - U3offset);
	}
01151: 0CB7     L0012
}
	
	fly0P = IOP;
01153: 0CB7 8B 95 FFFFFF30MOV   EDX, DWORD PTR FFFFFF30[EBP]
fly0P = IOP;
	fly1P = (IOP+Flyinc);
01155: 0CBD 8B BD FFFFFF48MOV   EDI, DWORD PTR FFFFFF48[EBP]
01158: 0CC3 8B 9D FFFFFF30MOV   EBX, DWORD PTR FFFFFF30[EBP]
01156: 0CC9 C1 E7 02    SHL     EDI, 00000002
01157: 0CCC             NOOP    
01159: 0CCC 01 FB       ADD     EBX, EDI
01160: 0CCE             NOOP    
fly1P = (IOP+Flyinc);
	fly2P = (fly1P+Flyinc);
01162: 0CCE 89 D9       MOV     ECX, EBX
01170: 0CD0 8B 85 FFFFFF64MOV   EAX, DWORD PTR FFFFFF64[EBP]
01163: 0CD6 01 F9       ADD     ECX, EDI
01164: 0CD8             NOOP    
fly2P = (fly1P+Flyinc);
	fly3P = (fly2P+Flyinc);
01166: 0CD8 89 CE       MOV     ESI, ECX
01171: 0CDA 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
01167: 0CE0 01 FE       ADD     ESI, EDI
01168: 0CE2             NOOP    
fly3P = (fly2P+Flyinc);

	for (diffUcnt = (NdiffU)>>1; diffUcnt != 0; diffUcnt--){
01172: 0CE2 D1 BD FFFFFF20SAR   DWORD PTR FFFFFF20[EBP], 00000001
01173: 0CE8             NOOP    
01174: 0CE8 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
01175: 0CEE 89 85 FFFFFF10MOV   DWORD PTR FFFFFF10[EBP], EAX
01176: 0CF4 C1 A5 FFFFFF1002 SHL DWORD PTR FFFFFF10[EBP], 00000002
01177: 0CFB             NOOP    
01178: 0CFB 8B 85 FFFFFF1CMOV   EAX, DWORD PTR FFFFFF1C[EBP]
01179: 0D01 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
01180: 0D07 C1 A5 FFFFFF1402 SHL DWORD PTR FFFFFF14[EBP], 00000002
01181: 0D0E             NOOP    
01182: 0D0E 8B 85 FFFFFF54MOV   EAX, DWORD PTR FFFFFF54[EBP]
01183: 0D14 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
01184: 0D1A 81 A5 FFFFFF2C00000001 AND DWORD PTR FFFFFF2C[EBP], 00000001
01185: 0D24             NOOP    
01186: 0D24 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
01187: 0D2A 89 85 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], EAX
01188: 0D30 C1 A5 FFFFFF1802 SHL DWORD PTR FFFFFF18[EBP], 00000002
01189: 0D37             NOOP    
01190: 0D37 8B 85 FFFFFF44MOV   EAX, DWORD PTR FFFFFF44[EBP]
01191: 0D3D 89 85 FFFFFF24MOV   DWORD PTR FFFFFF24[EBP], EAX
01192: 0D43 C1 A5 FFFFFF2402 SHL DWORD PTR FFFFFF24[EBP], 00000002
01193: 0D4A             NOOP    
01194: 0D4A 8B 85 FFFFFF48MOV   EAX, DWORD PTR FFFFFF48[EBP]
01195: 0D50 89 85 FFFFFF08MOV   DWORD PTR FFFFFF08[EBP], EAX
01196: 0D56 C1 A5 FFFFFF0802 SHL DWORD PTR FFFFFF08[EBP], 00000002
01197: 0D5D             NOOP    
01198: 0D5D E9 00000B31 JMP     L0013
01199: 0D62     L0014
for (diffUcnt = (NdiffU)>>1; diffUcnt != 0; diffUcnt--){

			/* Butterflys		*/
			/*
			f0	-	-	t0	-	-	t0	-	-	t0
			f1	-U0	-	t1	-	-	t1	-	-	t1
			f2	-	-	f2	-U1	-	f5	-	-	f3
			f3	-U0	-	f1	-U1a-	f7	-	-	f7
			f4	-	-	f4	-	-	f4	-U2	-	f6
			f5	-U0	-	f0	-	-	f0	-U3	-	f4
			f6	-	-	f6	-U1	-	f2	-U2a-	f2
			f7	-U0	-	f3	-U1a-	f1	-U3a-	f5
			*/
		
		fly0r = *(IOP);
01201: 0D62 8B 85 FFFFFF30MOV   EAX, DWORD PTR FFFFFF30[EBP]
01202: 0D68 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01203: 0D6A 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(IOP);
		fly0i = *(IOP+1);
01205: 0D70 8B 85 FFFFFF30MOV   EAX, DWORD PTR FFFFFF30[EBP]
01206: 0D76 8B 40 04    MOV     EAX, DWORD PTR 00000004[EAX]
01207: 0D79 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(IOP+1);
		fly1r = *(fly1P);
01209: 0D7C 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
01210: 0D7E 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly1P);
		fly1i = *(fly1P+1);
01212: 0D81 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
01213: 0D84 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly1P+1);

		for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
01215: 0D87 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
01216: 0D8D 89 85 FFFFFF0CMOV   DWORD PTR FFFFFF0C[EBP], EAX
01217: 0D93 83 85 FFFFFF0CFF ADD DWORD PTR FFFFFF0C[EBP], FFFFFFFF
01218: 0D9A             NOOP    
01219: 0D9A 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01220: 0DA0 89 85 FFFFFEE4MOV   DWORD PTR FFFFFEE4[EBP], EAX
01221: 0DA6 C1 A5 FFFFFEE402 SHL DWORD PTR FFFFFEE4[EBP], 00000002
01222: 0DAD             NOOP    
01223: 0DAD E9 0000051C JMP     L0015
01224: 0DB2     L0016
for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
	
			fly2r = *(fly2P);
01226: 0DB2 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01227: 0DB4 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
01229: 0DB7 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01230: 0DBA 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
			fly3r = *(fly3P);
01232: 0DBD 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01233: 0DBF 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P);
			fly3i = *(fly3P + 1);
01235: 0DC2 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01236: 0DC5 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
01238: 0DC8 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01239: 0DCE 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01240: 0DD1 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
01242: 0DD4 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01243: 0DDA 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01244: 0DDD 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly5r = *(fly1P + FlyOffsetA);
01246: 0DE0 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01247: 0DE6 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01248: 0DE9 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
			fly5i = *(fly1P + FlyOffsetAIm);
01250: 0DEC 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01251: 0DF2 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01252: 0DF5 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
01254: 0DF8 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01255: 0DFE 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01256: 0E01 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
01258: 0E04 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01259: 0E0A 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01260: 0E0D 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly7r = *(fly3P + FlyOffsetA);
01262: 0E10 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01263: 0E16 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01264: 0E19 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
			fly7i = *(fly3P + FlyOffsetAIm);
01266: 0E1C 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01267: 0E22 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01268: 0E25 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

			t1r = fly0r - U0r * fly1r;
01270: 0E28 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01271: 0E2B D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01272: 0E2E D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01273: 0E34 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = fly0r - U0r * fly1r;
			t1r = t1r - U0i * fly1i;
01275: 0E37 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01276: 0E3A D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01277: 0E3D D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
01278: 0E40 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r - U0i * fly1i;
			t1i = fly0i + U0i * fly1r;
01280: 0E43 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01281: 0E46 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01282: 0E49 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
01283: 0E4C D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = fly0i + U0i * fly1r;
			t1i = t1i - U0r * fly1i;
01285: 0E4F D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01286: 0E52 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01287: 0E55 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
01288: 0E58 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i - U0r * fly1i;
			t0r = scale * fly0r - t1r;
01290: 0E5B D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01291: 0E61 D8 0D 00000000 FMUL DWORD PTR .data+000001d8
01292: 0E67 D8 65 E4    FSUB    DWORD PTR FFFFFFE4[EBP]
01293: 0E6A D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * fly0r - t1r;
			t0i = scale * fly0i - t1i;
01295: 0E6D D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01296: 0E70 D8 0D 00000000 FMUL DWORD PTR .data+000001dc
01297: 0E76 D8 65 E8    FSUB    DWORD PTR FFFFFFE8[EBP]
01298: 0E79 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * fly0i - t1i;
	
			fly1r = fly2r - U0r * fly3r;
01300: 0E7C D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01301: 0E7F D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01302: 0E82 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01303: 0E85 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly2r - U0r * fly3r;
			fly1r = fly1r - U0i * fly3i;
01305: 0E88 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01306: 0E8B D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01307: 0E8E D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
01308: 0E91 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r - U0i * fly3i;
			fly1i = fly2i + U0i * fly3r;
01310: 0E94 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01311: 0E97 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01312: 0E9A D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
01313: 0E9D D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly2i + U0i * fly3r;
			fly1i = fly1i - U0r * fly3i;
01315: 0EA0 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01316: 0EA3 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01317: 0EA6 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01318: 0EA9 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i - U0r * fly3i;
			fly2r = scale * fly2r - fly1r;
01320: 0EAC D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01321: 0EAF D8 0D 00000000 FMUL DWORD PTR .data+000001e0
01322: 0EB5 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01323: 0EB8 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly2r - fly1r;
			fly2i = scale * fly2i - fly1i;
01325: 0EBB D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01326: 0EBE D8 0D 00000000 FMUL DWORD PTR .data+000001e4
01327: 0EC4 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01328: 0EC7 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly2i - fly1i;
	
			fly0r = fly4r - U0r * fly5r;
01330: 0ECA D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01331: 0ECD D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01332: 0ED0 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01333: 0ED3 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly4r - U0r * fly5r;
			fly0r = fly0r - U0i * fly5i;
01335: 0ED9 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01336: 0EDC D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01337: 0EDF D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01338: 0EE5 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r - U0i * fly5i;
			fly0i = fly4i + U0i * fly5r;
01340: 0EEB D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01341: 0EEE D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01342: 0EF1 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01343: 0EF4 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly4i + U0i * fly5r;
			fly0i = fly0i - U0r * fly5i;
01345: 0EF7 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01346: 0EFA D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01347: 0EFD D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01348: 0F00 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i - U0r * fly5i;
			fly4r = scale * fly4r - fly0r;
01350: 0F03 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01351: 0F06 D8 0D 00000000 FMUL DWORD PTR .data+000001e8
01352: 0F0C D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01353: 0F12 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly0r;
			fly4i = scale * fly4i - fly0i;
01355: 0F15 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01356: 0F18 D8 0D 00000000 FMUL DWORD PTR .data+000001ec
01357: 0F1E D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01358: 0F21 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly0i;
	
			fly3r = fly6r - U0r * fly7r;
01360: 0F24 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01361: 0F27 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01362: 0F2A D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
01363: 0F2D D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly6r - U0r * fly7r;
			fly3r = fly3r - U0i * fly7i;
01365: 0F30 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01366: 0F33 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01367: 0F36 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01368: 0F39 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r - U0i * fly7i;
			fly3i = fly6i + U0i * fly7r;
01370: 0F3C D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01371: 0F3F D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01372: 0F42 D8 45 B0    FADD    DWORD PTR FFFFFFB0[EBP]
01373: 0F45 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly6i + U0i * fly7r;
			fly3i = fly3i - U0r * fly7i;
01375: 0F48 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01376: 0F4B D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01377: 0F4E D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01378: 0F51 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U0r * fly7i;
			fly6r = scale * fly6r - fly3r;
01380: 0F54 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01381: 0F57 D8 0D 00000000 FMUL DWORD PTR .data+000001f0
01382: 0F5D D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01383: 0F60 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = scale * fly6r - fly3r;
			fly6i = scale * fly6i - fly3i;
01385: 0F63 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01386: 0F66 D8 0D 00000000 FMUL DWORD PTR .data+000001f4
01387: 0F6C D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01388: 0F6F D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = scale * fly6i - fly3i;
	

			fly5r = t0r - U1r * fly2r;
01390: 0F72 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01391: 0F75 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01392: 0F78 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01393: 0F7B D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - U1r * fly2r;
			fly5r = fly5r - U1i * fly2i;
01395: 0F7E D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01396: 0F81 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01397: 0F84 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01398: 0F87 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r - U1i * fly2i;
			fly5i = t0i + U1i * fly2r;
01400: 0F8A D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01401: 0F8D D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01402: 0F90 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
01403: 0F93 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i + U1i * fly2r;
			fly5i = fly5i - U1r * fly2i;
01405: 0F96 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01406: 0F99 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01407: 0F9C D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
01408: 0F9F D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i - U1r * fly2i;
			t0r = scale * t0r - fly5r;
01410: 0FA2 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01411: 0FA5 D8 0D 00000000 FMUL DWORD PTR .data+000001f8
01412: 0FAB D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01413: 0FAE D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly5r;
			t0i = scale * t0i - fly5i;
01415: 0FB1 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01416: 0FB4 D8 0D 00000000 FMUL DWORD PTR .data+000001fc
01417: 0FBA D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01418: 0FBD D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly5i;

			fly7r = t1r + U1i * fly1r;
01420: 0FC0 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01421: 0FC3 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01422: 0FC6 D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
01423: 0FC9 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r + U1i * fly1r;
			fly7r = fly7r - U1r * fly1i;
01425: 0FCC D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01426: 0FCF D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01427: 0FD2 D8 6D B4    FSUBR   DWORD PTR FFFFFFB4[EBP]
01428: 0FD5 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = fly7r - U1r * fly1i;
			fly7i = t1i + U1r * fly1r;
01430: 0FD8 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01431: 0FDB D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01432: 0FDE D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
01433: 0FE1 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i + U1r * fly1r;
			fly7i = fly7i + U1i * fly1i;
01435: 0FE4 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01436: 0FE7 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01437: 0FEA D8 45 B8    FADD    DWORD PTR FFFFFFB8[EBP]
01438: 0FED D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = fly7i + U1i * fly1i;
			t1r = scale * t1r - fly7r;
01440: 0FF0 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
01441: 0FF3 D8 0D 00000000 FMUL DWORD PTR .data+00000200
01442: 0FF9 D8 65 B4    FSUB    DWORD PTR FFFFFFB4[EBP]
01443: 0FFC D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly7r;
			t1i = scale * t1i - fly7i;
01445: 0FFF D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
01446: 1002 D8 0D 00000000 FMUL DWORD PTR .data+00000204
01447: 1008 D8 65 B8    FSUB    DWORD PTR FFFFFFB8[EBP]
01448: 100B D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly7i;

			fly2r = fly4r - U1r * fly6r;
01450: 100E D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01451: 1011 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01452: 1014 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01453: 1017 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - U1r * fly6r;
			fly2r = fly2r - U1i * fly6i;
01455: 101A D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01456: 101D D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01457: 1020 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01458: 1023 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly2r - U1i * fly6i;
			fly2i = fly4i + U1i * fly6r;
01460: 1026 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01461: 1029 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01462: 102C D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01463: 102F D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i + U1i * fly6r;
			fly2i = fly2i - U1r * fly6i;
01465: 1032 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01466: 1035 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01467: 1038 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01468: 103B D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly2i - U1r * fly6i;
			fly4r = scale * fly4r - fly2r;
01470: 103E D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01471: 1041 D8 0D 00000000 FMUL DWORD PTR .data+00000208
01472: 1047 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
01473: 104A D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly2r;
			fly4i = scale * fly4i - fly2i;
01475: 104D D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01476: 1050 D8 0D 00000000 FMUL DWORD PTR .data+0000020c
01477: 1056 D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
01478: 1059 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly2i;

			fly1r = fly0r + U1i * fly3r;
01480: 105C D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01481: 105F D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01482: 1062 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
01483: 1068 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r + U1i * fly3r;
			fly1r = fly1r - U1r * fly3i;
01485: 106B D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01486: 106E D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01487: 1071 D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
01488: 1074 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r - U1r * fly3i;
			fly1i = fly0i + U1r * fly3r;
01490: 1077 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01491: 107A D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01492: 107D D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
01493: 1080 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i + U1r * fly3r;
			fly1i = fly1i + U1i * fly3i;
01495: 1083 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01496: 1086 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01497: 1089 D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
01498: 108C D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i + U1i * fly3i;
			fly0r = scale * fly0r - fly1r;
01500: 108F D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01501: 1095 D8 0D 00000000 FMUL DWORD PTR .data+00000210
01502: 109B D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01503: 109E D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = scale * fly0r - fly1r;
			fly0i = scale * fly0i - fly1i;
01505: 10A4 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01506: 10A7 D8 0D 00000000 FMUL DWORD PTR .data+00000214
01507: 10AD D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01508: 10B0 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = scale * fly0i - fly1i;

			fly6r = t0r - U2r * fly4r;
01510: 10B3 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01511: 10B6 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01512: 10B9 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01513: 10BC D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = t0r - U2r * fly4r;
			fly6r = fly6r - U2i * fly4i;
01515: 10BF D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01516: 10C2 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01517: 10C5 D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
01518: 10C8 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = fly6r - U2i * fly4i;
			fly6i = t0i + U2i * fly4r;
01520: 10CB D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01521: 10CE D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01522: 10D1 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
01523: 10D4 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = t0i + U2i * fly4r;
			fly6i = fly6i - U2r * fly4i;
01525: 10D7 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01526: 10DA D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01527: 10DD D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
01528: 10E0 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = fly6i - U2r * fly4i;
			t0r = scale * t0r - fly6r;
01530: 10E3 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01531: 10E6 D8 0D 00000000 FMUL DWORD PTR .data+00000218
01532: 10EC D8 65 AC    FSUB    DWORD PTR FFFFFFAC[EBP]
01533: 10EF D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly6r;
			t0i = scale * t0i - fly6i;
01535: 10F2 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01536: 10F5 D8 0D 00000000 FMUL DWORD PTR .data+0000021c
01537: 10FB D8 65 B0    FSUB    DWORD PTR FFFFFFB0[EBP]
01538: 10FE D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly6i;

			fly3r = fly5r - U2i * fly2r;
01540: 1101 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01541: 1104 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01542: 1107 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01543: 110A D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly5r - U2i * fly2r;
			fly3r = fly3r + U2r * fly2i;
01545: 110D D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01546: 1110 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01547: 1113 D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
01548: 1116 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r + U2r * fly2i;
			fly3i = fly5i - U2r * fly2r;
01550: 1119 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01551: 111C D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01552: 111F D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
01553: 1122 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly5i - U2r * fly2r;
			fly3i = fly3i - U2i * fly2i;
01555: 1125 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01556: 1128 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01557: 112B D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01558: 112E D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U2i * fly2i;
			fly2r = scale * fly5r - fly3r;
01560: 1131 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01561: 1134 D8 0D 00000000 FMUL DWORD PTR .data+00000220
01562: 113A D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01563: 113D D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly5r - fly3r;
			fly2i = scale * fly5i - fly3i;
01565: 1140 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01566: 1143 D8 0D 00000000 FMUL DWORD PTR .data+00000224
01567: 1149 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01568: 114C D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly5i - fly3i;

			fly4r = t1r - U3r * fly0r;
01570: 114F D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01571: 1155 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01572: 1158 D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
01573: 115B D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r - U3i * fly0i;
01575: 115E D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01576: 1161 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01577: 1164 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01578: 1167 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r - U3i * fly0i;
			fly4i = t1i + U3i * fly0r;
01580: 116A D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01581: 1170 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01582: 1173 D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
01583: 1176 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = t1i + U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
01585: 1179 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01586: 117C D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01587: 117F D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01588: 1182 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
01590: 1185 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
01591: 1188 D8 0D 00000000 FMUL DWORD PTR .data+00000228
01592: 118E D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
01593: 1191 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
01595: 1194 D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
01596: 1197 D8 0D 00000000 FMUL DWORD PTR .data+0000022c
01597: 119D D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
01598: 11A0 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly4i;

			fly5r = fly7r + U3i * fly1r;
01600: 11A3 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01601: 11A6 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01602: 11A9 D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
01603: 11AC D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly7r + U3i * fly1r;
			fly5r = fly5r - U3r * fly1i;
01605: 11AF D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01606: 11B2 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01607: 11B5 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01608: 11B8 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r - U3r * fly1i;
			fly5i = fly7i + U3r * fly1r;
01610: 11BB D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01611: 11BE D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01612: 11C1 D8 45 B8    FADD    DWORD PTR FFFFFFB8[EBP]
01613: 11C4 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly7i + U3r * fly1r;
			fly5i = fly5i + U3i * fly1i;
01615: 11C7 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01616: 11CA D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01617: 11CD D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
01618: 11D0 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i + U3i * fly1i;
			fly7r = scale * fly7r - fly5r;
01620: 11D3 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01621: 11D6 D8 0D 00000000 FMUL DWORD PTR .data+00000230
01622: 11DC D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01623: 11DF D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = scale * fly7r - fly5r;
			fly7i = scale * fly7i - fly5i;
01625: 11E2 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01626: 11E5 D8 0D 00000000 FMUL DWORD PTR .data+00000234
01627: 11EB D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01628: 11EE D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = scale * fly7i - fly5i;

			*(fly0P + FlyOffsetA) = fly6r;
01630: 11F1 8B 7D AC    MOV     EDI, DWORD PTR FFFFFFAC[EBP]
01631: 11F4 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01632: 11FA 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
01634: 11FD 8B 7D B0    MOV     EDI, DWORD PTR FFFFFFB0[EBP]
01635: 1200 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01636: 1206 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
01638: 1209 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
01639: 120C 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
01641: 120E 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
01642: 1211 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;
			*(fly2P) = fly3r;
01644: 1214 8B 45 94    MOV     EAX, DWORD PTR FFFFFF94[EBP]
01645: 1217 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
			*(fly2P + 1) = fly3i;
01647: 1219 8B 45 98    MOV     EAX, DWORD PTR FFFFFF98[EBP]
01648: 121C 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
			*(fly2P + FlyOffsetA) = fly2r;
01650: 121F 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
01651: 1222 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01652: 1228 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
01654: 122B 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
01655: 122E 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01656: 1234 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;

			fly0r = *(fly0P + FlyOffsetB);
01658: 1237 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01659: 123D 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01660: 1240 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly0P + FlyOffsetB);
			fly0i = *(fly0P + FlyOffsetBIm);
01662: 1246 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01663: 124C 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01664: 124F 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly0P + FlyOffsetBIm);

			*(fly1P + FlyOffsetA) = fly4r;
01666: 1252 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
01667: 1255 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01668: 125B 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
01670: 125E 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
01671: 1261 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01672: 1267 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
01674: 126A 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
01675: 126D 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
01677: 126F 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
01678: 1272 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;

			fly1r = *(fly1P + FlyOffsetB);
01680: 1275 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01681: 127B 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01682: 127E 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly1P + FlyOffsetB);
			fly1i = *(fly1P + FlyOffsetBIm);
01684: 1281 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01685: 1287 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01686: 128A 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly1P + FlyOffsetBIm);

			*(fly3P + FlyOffsetA) = fly5r;
01688: 128D 8B 7D A4    MOV     EDI, DWORD PTR FFFFFFA4[EBP]
01689: 1290 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01690: 1296 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly5r;
			*(fly3P + FlyOffsetAIm) = fly5i;
01692: 1299 8B 7D A8    MOV     EDI, DWORD PTR FFFFFFA8[EBP]
01693: 129C 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01694: 12A2 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly5i;
			*(fly3P) = fly7r;
01696: 12A5 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
01697: 12A8 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01699: 12AA 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
01700: 12AD 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

			fly0P = (fly0P + FlyOffsetB);
01702: 12B0 03 95 FFFFFEE4ADD   EDX, DWORD PTR FFFFFEE4[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01704: 12B6 03 9D FFFFFEE4ADD   EBX, DWORD PTR FFFFFEE4[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01706: 12BC 03 8D FFFFFEE4ADD   ECX, DWORD PTR FFFFFEE4[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01708: 12C2 03 B5 FFFFFEE4ADD   ESI, DWORD PTR FFFFFEE4[EBP]
fly3P = (fly3P + FlyOffsetB);
		};
01710: 12C8 FF 8D FFFFFF0CDEC   DWORD PTR FFFFFF0C[EBP]
01711: 12CE     L0015
01712: 12CE 83 BD FFFFFF0C00 CMP DWORD PTR FFFFFF0C[EBP], 00000000
01713: 12D5 0F 8F FFFFFAD7 JG   L0016
};
		fly2r = *(fly2P);
01715: 12DB 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01716: 12DD 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
		fly2i = *(fly2P + 1);
01718: 12E0 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01719: 12E3 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
		fly3r = *(fly3P);
01721: 12E6 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01722: 12E8 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P);
		fly3i = *(fly3P + 1);
01724: 12EB 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01725: 12EE 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + 1);
		fly4r = *(fly0P + FlyOffsetA);
01727: 12F1 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01728: 12F7 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01729: 12FA 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
		fly4i = *(fly0P + FlyOffsetAIm);
01731: 12FD 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01732: 1303 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01733: 1306 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
		fly5r = *(fly1P + FlyOffsetA);
01735: 1309 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01736: 130F 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01737: 1312 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
		fly5i = *(fly1P + FlyOffsetAIm);
01739: 1315 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01740: 131B 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01741: 131E 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
		fly6r = *(fly2P + FlyOffsetA);
01743: 1321 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01744: 1327 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01745: 132A 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
		fly6i = *(fly2P + FlyOffsetAIm);
01747: 132D 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01748: 1333 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01749: 1336 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
		fly7r = *(fly3P + FlyOffsetA);
01751: 1339 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01752: 133F 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01753: 1342 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
		fly7i = *(fly3P + FlyOffsetAIm);
01755: 1345 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
01756: 134B 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01757: 134E 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

		t1r = fly0r - U0r * fly1r;
01759: 1351 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01760: 1354 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01761: 1357 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01762: 135D D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = fly0r - U0r * fly1r;
		t1r = t1r - U0i * fly1i;
01764: 1360 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01765: 1363 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01766: 1366 D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
01767: 1369 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r - U0i * fly1i;
		t1i = fly0i + U0i * fly1r;
01769: 136C D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01770: 136F D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01771: 1372 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
01772: 1375 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = fly0i + U0i * fly1r;
		t1i = t1i - U0r * fly1i;
01774: 1378 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01775: 137B D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01776: 137E D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
01777: 1381 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i - U0r * fly1i;
		t0r = scale * fly0r - t1r;
01779: 1384 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01780: 138A D8 0D 00000000 FMUL DWORD PTR .data+00000238
01781: 1390 D8 65 E4    FSUB    DWORD PTR FFFFFFE4[EBP]
01782: 1393 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * fly0r - t1r;
		t0i = scale * fly0i - t1i;
01784: 1396 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01785: 1399 D8 0D 00000000 FMUL DWORD PTR .data+0000023c
01786: 139F D8 65 E8    FSUB    DWORD PTR FFFFFFE8[EBP]
01787: 13A2 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * fly0i - t1i;

		fly1r = fly2r - U0r * fly3r;
01789: 13A5 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01790: 13A8 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01791: 13AB D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01792: 13AE D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly2r - U0r * fly3r;
		fly1r = fly1r - U0i * fly3i;
01794: 13B1 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01795: 13B4 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01796: 13B7 D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
01797: 13BA D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r - U0i * fly3i;
		fly1i = fly2i + U0i * fly3r;
01799: 13BD D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01800: 13C0 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01801: 13C3 D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
01802: 13C6 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly2i + U0i * fly3r;
		fly1i = fly1i - U0r * fly3i;
01804: 13C9 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01805: 13CC D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01806: 13CF D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01807: 13D2 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i - U0r * fly3i;
		fly2r = scale * fly2r - fly1r;
01809: 13D5 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01810: 13D8 D8 0D 00000000 FMUL DWORD PTR .data+00000240
01811: 13DE D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01812: 13E1 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly2r - fly1r;
		fly2i = scale * fly2i - fly1i;
01814: 13E4 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01815: 13E7 D8 0D 00000000 FMUL DWORD PTR .data+00000244
01816: 13ED D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01817: 13F0 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly2i - fly1i;

		fly0r = fly4r - U0r * fly5r;
01819: 13F3 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01820: 13F6 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01821: 13F9 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01822: 13FC D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly4r - U0r * fly5r;
		fly0r = fly0r - U0i * fly5i;
01824: 1402 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01825: 1405 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01826: 1408 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01827: 140E D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r - U0i * fly5i;
		fly0i = fly4i + U0i * fly5r;
01829: 1414 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01830: 1417 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01831: 141A D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01832: 141D D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly4i + U0i * fly5r;
		fly0i = fly0i - U0r * fly5i;
01834: 1420 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01835: 1423 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01836: 1426 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01837: 1429 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i - U0r * fly5i;
		fly4r = scale * fly4r - fly0r;
01839: 142C D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01840: 142F D8 0D 00000000 FMUL DWORD PTR .data+00000248
01841: 1435 D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01842: 143B D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly0r;
		fly4i = scale * fly4i - fly0i;
01844: 143E D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01845: 1441 D8 0D 00000000 FMUL DWORD PTR .data+0000024c
01846: 1447 D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01847: 144A D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly0i;

		fly3r = fly6r - U0r * fly7r;
01849: 144D D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01850: 1450 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01851: 1453 D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
01852: 1456 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly6r - U0r * fly7r;
		fly3r = fly3r - U0i * fly7i;
01854: 1459 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01855: 145C D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01856: 145F D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01857: 1462 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r - U0i * fly7i;
		fly3i = fly6i + U0i * fly7r;
01859: 1465 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01860: 1468 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01861: 146B D8 45 B0    FADD    DWORD PTR FFFFFFB0[EBP]
01862: 146E D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly6i + U0i * fly7r;
		fly3i = fly3i - U0r * fly7i;
01864: 1471 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01865: 1474 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01866: 1477 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01867: 147A D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U0r * fly7i;
		fly6r = scale * fly6r - fly3r;
01869: 147D D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01870: 1480 D8 0D 00000000 FMUL DWORD PTR .data+00000250
01871: 1486 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01872: 1489 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = scale * fly6r - fly3r;
		fly6i = scale * fly6i - fly3i;
01874: 148C D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01875: 148F D8 0D 00000000 FMUL DWORD PTR .data+00000254
01876: 1495 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01877: 1498 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = scale * fly6i - fly3i;

		fly5r = t0r - U1r * fly2r;
01879: 149B D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01880: 149E D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01881: 14A1 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01882: 14A4 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - U1r * fly2r;
		fly5r = fly5r - U1i * fly2i;
01884: 14A7 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01885: 14AA D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01886: 14AD D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01887: 14B0 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r - U1i * fly2i;
		fly5i = t0i + U1i * fly2r;
01889: 14B3 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01890: 14B6 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01891: 14B9 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
01892: 14BC D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i + U1i * fly2r;
		fly5i = fly5i - U1r * fly2i;
01894: 14BF D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01895: 14C2 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01896: 14C5 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
01897: 14C8 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i - U1r * fly2i;
		t0r = scale * t0r - fly5r;
01899: 14CB D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01900: 14CE D8 0D 00000000 FMUL DWORD PTR .data+00000258
01901: 14D4 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01902: 14D7 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly5r;
		t0i = scale * t0i - fly5i;
01904: 14DA D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01905: 14DD D8 0D 00000000 FMUL DWORD PTR .data+0000025c
01906: 14E3 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01907: 14E6 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly5i;

		fly7r = t1r + U1i * fly1r;
01909: 14E9 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01910: 14EC D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01911: 14EF D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
01912: 14F2 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r + U1i * fly1r;
		fly7r = fly7r - U1r * fly1i;
01914: 14F5 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01915: 14F8 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01916: 14FB D8 6D B4    FSUBR   DWORD PTR FFFFFFB4[EBP]
01917: 14FE D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = fly7r - U1r * fly1i;
		fly7i = t1i + U1r * fly1r;
01919: 1501 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01920: 1504 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01921: 1507 D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
01922: 150A D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i + U1r * fly1r;
		fly7i = fly7i + U1i * fly1i;
01924: 150D D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01925: 1510 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01926: 1513 D8 45 B8    FADD    DWORD PTR FFFFFFB8[EBP]
01927: 1516 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = fly7i + U1i * fly1i;
		t1r = scale * t1r - fly7r;
01929: 1519 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
01930: 151C D8 0D 00000000 FMUL DWORD PTR .data+00000260
01931: 1522 D8 65 B4    FSUB    DWORD PTR FFFFFFB4[EBP]
01932: 1525 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly7r;
		t1i = scale * t1i - fly7i;
01934: 1528 D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
01935: 152B D8 0D 00000000 FMUL DWORD PTR .data+00000264
01936: 1531 D8 65 B8    FSUB    DWORD PTR FFFFFFB8[EBP]
01937: 1534 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly7i;

		fly2r = fly4r - U1r * fly6r;
01939: 1537 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01940: 153A D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01941: 153D D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01942: 1540 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - U1r * fly6r;
		fly2r = fly2r - U1i * fly6i;
01944: 1543 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01945: 1546 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01946: 1549 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01947: 154C D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly2r - U1i * fly6i;
		fly2i = fly4i + U1i * fly6r;
01949: 154F D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01950: 1552 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01951: 1555 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01952: 1558 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i + U1i * fly6r;
		fly2i = fly2i - U1r * fly6i;
01954: 155B D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01955: 155E D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01956: 1561 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01957: 1564 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly2i - U1r * fly6i;
		fly4r = scale * fly4r - fly2r;
01959: 1567 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01960: 156A D8 0D 00000000 FMUL DWORD PTR .data+00000268
01961: 1570 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
01962: 1573 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly2r;
		fly4i = scale * fly4i - fly2i;
01964: 1576 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01965: 1579 D8 0D 00000000 FMUL DWORD PTR .data+0000026c
01966: 157F D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
01967: 1582 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly2i;

		fly1r = fly0r + U1i * fly3r;
01969: 1585 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01970: 1588 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01971: 158B D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
01972: 1591 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r + U1i * fly3r;
		fly1r = fly1r - U1r * fly3i;
01974: 1594 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01975: 1597 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01976: 159A D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
01977: 159D D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r - U1r * fly3i;
		fly1i = fly0i + U1r * fly3r;
01979: 15A0 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01980: 15A3 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01981: 15A6 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
01982: 15A9 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i + U1r * fly3r;
		fly1i = fly1i + U1i * fly3i;
01984: 15AC D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01985: 15AF D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01986: 15B2 D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
01987: 15B5 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i + U1i * fly3i;
		fly0r = scale * fly0r - fly1r;
01989: 15B8 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01990: 15BE D8 0D 00000000 FMUL DWORD PTR .data+00000270
01991: 15C4 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01992: 15C7 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = scale * fly0r - fly1r;
		fly0i = scale * fly0i - fly1i;
01994: 15CD D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01995: 15D0 D8 0D 00000000 FMUL DWORD PTR .data+00000274
01996: 15D6 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01997: 15D9 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = scale * fly0i - fly1i;

		U0i = *(U0iP = (U0iP - NsameU4));
01999: 15DC 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
02000: 15E2 2B 85 FFFFFF10SUB   EAX, DWORD PTR FFFFFF10[EBP]
02001: 15E8 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
02002: 15EE 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02003: 15F0 89 45 C0    MOV     DWORD PTR FFFFFFC0[EBP], EAX
U0i = *(U0iP = (U0iP - NsameU4));
		U0r = *(U0rP = (U0rP + NsameU4));		
02005: 15F3 8B 85 FFFFFF58MOV   EAX, DWORD PTR FFFFFF58[EBP]
02006: 15F9 03 85 FFFFFF10ADD   EAX, DWORD PTR FFFFFF10[EBP]
02007: 15FF 89 85 FFFFFF58MOV   DWORD PTR FFFFFF58[EBP], EAX
02008: 1605 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02009: 1607 89 45 BC    MOV     DWORD PTR FFFFFFBC[EBP], EAX
U0r = *(U0rP = (U0rP + NsameU4));		
		U1r = *(U1rP = (U1rP + NsameU2));
02011: 160A 8B 85 FFFFFF5CMOV   EAX, DWORD PTR FFFFFF5C[EBP]
02012: 1610 03 85 FFFFFF14ADD   EAX, DWORD PTR FFFFFF14[EBP]
02013: 1616 89 85 FFFFFF5CMOV   DWORD PTR FFFFFF5C[EBP], EAX
02014: 161C 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02015: 161E 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
U1r = *(U1rP = (U1rP + NsameU2));
		U1i = *(U1iP = (U1iP - NsameU2));
02017: 1621 8B 85 FFFFFF60MOV   EAX, DWORD PTR FFFFFF60[EBP]
02018: 1627 2B 85 FFFFFF14SUB   EAX, DWORD PTR FFFFFF14[EBP]
02019: 162D 89 85 FFFFFF60MOV   DWORD PTR FFFFFF60[EBP], EAX
02020: 1633 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02021: 1635 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U1i = *(U1iP = (U1iP - NsameU2));
		if(stage&1)
02023: 1638 83 BD FFFFFF2C00 CMP DWORD PTR FFFFFF2C[EBP], 00000000
02024: 163F 74 08       JE      L0017
if(stage&1)
			U0r = -U0r;
02026: 1641 D9 45 BC    FLD     DWORD PTR FFFFFFBC[EBP]
02027: 1644 D9 E0       FCHS    
02028: 1646 D9 5D BC    FSTP    DWORD PTR FFFFFFBC[EBP]
02029: 1649     L0017
U0r = -U0r;

		fly6r = t0r - U2r * fly4r;
02031: 1649 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
02032: 164C D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02033: 164F D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
02034: 1652 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = t0r - U2r * fly4r;
		fly6r = fly6r - U2i * fly4i;
02036: 1655 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02037: 1658 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02038: 165B D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
02039: 165E D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = fly6r - U2i * fly4i;
		fly6i = t0i + U2i * fly4r;
02041: 1661 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
02042: 1664 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02043: 1667 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
02044: 166A D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = t0i + U2i * fly4r;
		fly6i = fly6i - U2r * fly4i;
02046: 166D D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02047: 1670 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02048: 1673 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
02049: 1676 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = fly6i - U2r * fly4i;
		t0r = scale * t0r - fly6r;
02051: 1679 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
02052: 167C D8 0D 00000000 FMUL DWORD PTR .data+00000278
02053: 1682 D8 65 AC    FSUB    DWORD PTR FFFFFFAC[EBP]
02054: 1685 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly6r;
		t0i = scale * t0i - fly6i;
02056: 1688 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
02057: 168B D8 0D 00000000 FMUL DWORD PTR .data+0000027c
02058: 1691 D8 65 B0    FSUB    DWORD PTR FFFFFFB0[EBP]
02059: 1694 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly6i;

		fly3r = fly5r - U2i * fly2r;
02061: 1697 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02062: 169A D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02063: 169D D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
02064: 16A0 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly5r - U2i * fly2r;
		fly3r = fly3r + U2r * fly2i;
02066: 16A3 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02067: 16A6 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02068: 16A9 D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
02069: 16AC D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r + U2r * fly2i;
		fly3i = fly5i - U2r * fly2r;
02071: 16AF D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02072: 16B2 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02073: 16B5 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
02074: 16B8 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly5i - U2r * fly2r;
		fly3i = fly3i - U2i * fly2i;
02076: 16BB D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02077: 16BE D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02078: 16C1 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
02079: 16C4 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U2i * fly2i;
		fly2r = scale * fly5r - fly3r;
02081: 16C7 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
02082: 16CA D8 0D 00000000 FMUL DWORD PTR .data+00000280
02083: 16D0 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
02084: 16D3 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly5r - fly3r;
		fly2i = scale * fly5i - fly3i;
02086: 16D6 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
02087: 16D9 D8 0D 00000000 FMUL DWORD PTR .data+00000284
02088: 16DF D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
02089: 16E2 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly5i - fly3i;

		fly4r = t1r - U3r * fly0r;
02091: 16E5 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02092: 16EB D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02093: 16EE D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
02094: 16F1 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = t1r - U3r * fly0r;
		fly4r = fly4r - U3i * fly0i;
02096: 16F4 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02097: 16F7 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02098: 16FA D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
02099: 16FD D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r - U3i * fly0i;
		fly4i = t1i + U3i * fly0r;
02101: 1700 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02102: 1706 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02103: 1709 D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
02104: 170C D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = t1i + U3i * fly0r;
		fly4i = fly4i - U3r * fly0i;
02106: 170F D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02107: 1712 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02108: 1715 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
02109: 1718 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i - U3r * fly0i;
		t1r = scale * t1r - fly4r;
02111: 171B D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
02112: 171E D8 0D 00000000 FMUL DWORD PTR .data+00000288
02113: 1724 D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
02114: 1727 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly4r;
		t1i = scale * t1i - fly4i;
02116: 172A D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
02117: 172D D8 0D 00000000 FMUL DWORD PTR .data+0000028c
02118: 1733 D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
02119: 1736 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly4i;

		fly5r = fly7r + U3i * fly1r;
02121: 1739 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02122: 173C D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02123: 173F D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
02124: 1742 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly7r + U3i * fly1r;
		fly5r = fly5r - U3r * fly1i;
02126: 1745 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02127: 1748 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02128: 174B D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
02129: 174E D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r - U3r * fly1i;
		fly5i = fly7i + U3r * fly1r;
02131: 1751 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02132: 1754 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02133: 1757 D8 45 B8    FADD    DWORD PTR FFFFFFB8[EBP]
02134: 175A D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly7i + U3r * fly1r;
		fly5i = fly5i + U3i * fly1i;
02136: 175D D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02137: 1760 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02138: 1763 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
02139: 1766 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i + U3i * fly1i;
		fly7r = scale * fly7r - fly5r;
02141: 1769 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
02142: 176C D8 0D 00000000 FMUL DWORD PTR .data+00000290
02143: 1772 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
02144: 1775 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = scale * fly7r - fly5r;
		fly7i = scale * fly7i - fly5i;
02146: 1778 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
02147: 177B D8 0D 00000000 FMUL DWORD PTR .data+00000294
02148: 1781 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
02149: 1784 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = scale * fly7i - fly5i;

		*(fly0P + FlyOffsetA) = fly6r;
02151: 1787 8B 7D AC    MOV     EDI, DWORD PTR FFFFFFAC[EBP]
02152: 178A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02153: 1790 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
		*(fly0P + FlyOffsetAIm) = fly6i;
02155: 1793 8B 7D B0    MOV     EDI, DWORD PTR FFFFFFB0[EBP]
02156: 1796 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
02157: 179C 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
		*(fly0P) = t0r;
02159: 179F 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
02160: 17A2 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
		*(fly0P + 1) = t0i;
02162: 17A4 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
02163: 17A7 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;

		U2r = *(U2rP = (U2rP + NsameU1));
02165: 17AA 8B 85 FFFFFF4CMOV   EAX, DWORD PTR FFFFFF4C[EBP]
02166: 17B0 03 85 FFFFFF18ADD   EAX, DWORD PTR FFFFFF18[EBP]
02167: 17B6 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
02168: 17BC 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02169: 17BE 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
U2r = *(U2rP = (U2rP + NsameU1));
		U2i = *(U2iP = (U2iP - NsameU1));
02171: 17C1 8B 85 FFFFFF50MOV   EAX, DWORD PTR FFFFFF50[EBP]
02172: 17C7 2B 85 FFFFFF18SUB   EAX, DWORD PTR FFFFFF18[EBP]
02173: 17CD 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
02174: 17D3 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02175: 17D5 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
U2i = *(U2iP = (U2iP - NsameU1));

		*(fly2P) = fly3r;
02177: 17D8 8B 45 94    MOV     EAX, DWORD PTR FFFFFF94[EBP]
02178: 17DB 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
		*(fly2P + 1) = fly3i;
02180: 17DD 8B 45 98    MOV     EAX, DWORD PTR FFFFFF98[EBP]
02181: 17E0 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
		*(fly2P + FlyOffsetA) = fly2r;
02183: 17E3 8B 55 8C    MOV     EDX, DWORD PTR FFFFFF8C[EBP]
02184: 17E6 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02185: 17EC 89 14 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDX
*(fly2P + FlyOffsetA) = fly2r;
		*(fly2P + FlyOffsetAIm) = fly2i;
02187: 17EF 8B 55 90    MOV     EDX, DWORD PTR FFFFFF90[EBP]
02188: 17F2 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
02189: 17F8 89 14 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDX
*(fly2P + FlyOffsetAIm) = fly2i;
		*(fly1P + FlyOffsetA) = fly4r;
02191: 17FB 8B 55 9C    MOV     EDX, DWORD PTR FFFFFF9C[EBP]
02192: 17FE 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02193: 1804 89 14 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDX
*(fly1P + FlyOffsetA) = fly4r;
		*(fly1P + FlyOffsetAIm) = fly4i;
02195: 1807 8B 55 A0    MOV     EDX, DWORD PTR FFFFFFA0[EBP]
02196: 180A 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
02197: 1810 89 14 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDX
*(fly1P + FlyOffsetAIm) = fly4i;
		*(fly1P) = t1r;
02199: 1813 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
02200: 1816 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
		*(fly1P + 1) = t1i;
02202: 1818 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
02203: 181B 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;

		U3r = *( U2rP + U3offset);
02205: 181E 8B 8D FFFFFF44MOV   ECX, DWORD PTR FFFFFF44[EBP]
02206: 1824 8B 85 FFFFFF4CMOV   EAX, DWORD PTR FFFFFF4C[EBP]
02207: 182A 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
02208: 182D 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
U3r = *( U2rP + U3offset);
		U3i = *( U2iP - U3offset);
02210: 1830 8B 85 FFFFFF50MOV   EAX, DWORD PTR FFFFFF50[EBP]
02211: 1836 2B 85 FFFFFF24SUB   EAX, DWORD PTR FFFFFF24[EBP]
02212: 183C 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02213: 183E 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
U3i = *( U2iP - U3offset);

		*(fly3P + FlyOffsetA) = fly5r;
02215: 1841 8B 55 A4    MOV     EDX, DWORD PTR FFFFFFA4[EBP]
02216: 1844 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02217: 184A 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetA) = fly5r;
		*(fly3P + FlyOffsetAIm) = fly5i;
02219: 184D 8B 55 A8    MOV     EDX, DWORD PTR FFFFFFA8[EBP]
02220: 1850 8B 85 FFFFFED0MOV   EAX, DWORD PTR FFFFFED0[EBP]
02221: 1856 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetAIm) = fly5i;
		*(fly3P) = fly7r;
02223: 1859 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
02224: 185C 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
		*(fly3P + 1) = fly7i;
02226: 185E 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
02227: 1861 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

		IOP = IOP + 2;
02229: 1864 83 85 FFFFFF3008 ADD DWORD PTR FFFFFF30[EBP], 00000008
IOP = IOP + 2;
		fly0P = IOP;
02231: 186B 8B 95 FFFFFF30MOV   EDX, DWORD PTR FFFFFF30[EBP]
fly0P = IOP;
		fly1P = (IOP+Flyinc);
02233: 1871 89 D0       MOV     EAX, EDX
02234: 1873 03 85 FFFFFF08ADD   EAX, DWORD PTR FFFFFF08[EBP]
02235: 1879             NOOP    
02236: 1879 89 C3       MOV     EBX, EAX
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
02238: 187B 89 DF       MOV     EDI, EBX
02239: 187D 03 BD FFFFFF08ADD   EDI, DWORD PTR FFFFFF08[EBP]
02240: 1883             NOOP    
02241: 1883 89 F9       MOV     ECX, EDI
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
02243: 1885 89 FE       MOV     ESI, EDI
02244: 1887 03 B5 FFFFFF08ADD   ESI, DWORD PTR FFFFFF08[EBP]
02245: 188D             NOOP    
fly3P = (fly2P+Flyinc);
	};
02247: 188D FF 8D FFFFFF20DEC   DWORD PTR FFFFFF20[EBP]
02248: 1893     L0013
02249: 1893 83 BD FFFFFF2000 CMP DWORD PTR FFFFFF20[EBP], 00000000
02250: 189A 0F 85 FFFFF4C2 JNE  L0014
};
	NsameU4 = -NsameU4;
02252: 18A0 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
02253: 18A6 F7 D8       NEG     EAX
02254: 18A8 89 85 FFFFFF38MOV   DWORD PTR FFFFFF38[EBP], EAX
NsameU4 = -NsameU4;

	if(stage&1){
02256: 18AE 83 BD FFFFFF3400 CMP DWORD PTR FFFFFF34[EBP], 00000000
02257: 18B5 74 5E       JE      L0018
if(stage&1){
		LoopN >>= 3;
02259: 18B7 C1 BD FFFFFF4003 SAR DWORD PTR FFFFFF40[EBP], 00000003
LoopN >>= 3;
		NsameU1 >>= 3;
02261: 18BE C1 BD FFFFFF2803 SAR DWORD PTR FFFFFF28[EBP], 00000003
NsameU1 >>= 3;
		NsameU2 >>= 3;
02263: 18C5 C1 BD FFFFFF1C03 SAR DWORD PTR FFFFFF1C[EBP], 00000003
NsameU2 >>= 3;
		NsameU4 >>= 3;
02265: 18CC C1 BD FFFFFF3803 SAR DWORD PTR FFFFFF38[EBP], 00000003
NsameU4 >>= 3;
		NdiffU <<= 3;
02267: 18D3 C1 A5 FFFFFF6403 SHL DWORD PTR FFFFFF64[EBP], 00000003
NdiffU <<= 3;
		Flyinc <<= 3;
02269: 18DA C1 A5 FFFFFF4803 SHL DWORD PTR FFFFFF48[EBP], 00000003
Flyinc <<= 3;
		FlyOffsetA <<= 3;
02271: 18E1 C1 A5 FFFFFED803 SHL DWORD PTR FFFFFED8[EBP], 00000003
FlyOffsetA <<= 3;
		FlyOffsetB <<= 3;
02273: 18E8 C1 A5 FFFFFEE803 SHL DWORD PTR FFFFFEE8[EBP], 00000003
FlyOffsetB <<= 3;
		FlyOffsetAIm =  FlyOffsetA + 1;
02275: 18EF 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02276: 18F5 89 85 FFFFFED0MOV   DWORD PTR FFFFFED0[EBP], EAX
02277: 18FB 83 85 FFFFFED001 ADD DWORD PTR FFFFFED0[EBP], 00000001
02278: 1902             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
		FlyOffsetBIm =  FlyOffsetB + 1;
02280: 1902 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
02281: 1908 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
02282: 190E 83 85 FFFFFEEC01 ADD DWORD PTR FFFFFEEC[EBP], 00000001
02283: 1915             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
	}
02285: 1915     L0018
}
}
02287: 1915 FF 8D FFFFFF54DEC   DWORD PTR FFFFFF54[EBP]
02288: 191B     L0010
02289: 191B 83 BD FFFFFF5400 CMP DWORD PTR FFFFFF54[EBP], 00000000
02290: 1922 0F 8F FFFFF2A0 JG   L0011
}
ioptr += 2*Ntbl[M];
02292: 1928 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
02293: 192B 8B 04 85 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
02294: 1932 C1 E0 03    SHL     EAX, 00000003
02295: 1935 01 45 08    ADD     DWORD PTR 00000008[EBP], EAX
ioptr += 2*Ntbl[M];
}
02297: 1938 FF 4D 10    DEC     DWORD PTR 00000010[EBP]
02298: 193B     L0001
02299: 193B 83 7D 10 00 CMP     DWORD PTR 00000010[EBP], 00000000
02300: 193F 0F 8F FFFFE73B JG   L0002
}
}
02302: 1945     L0000
02303: 1945 8D 65 F4    LEA     ESP, DWORD PTR FFFFFFF4[EBP]
02304: 1948 5F          POP     EDI
02305: 1949 5E          POP     ESI
02306: 194A 5B          POP     EBX
02307: 194B 5D          POP     EBP
02308: 194C C3          RETN    

Function: ?iffts@@YAXPAMJJ0@Z
}

void iffts(float *ioptr, long M, long Rows, float *Utbl){
00002: 0000 55          PUSH    EBP
00003: 0001 89 E5       MOV     EBP, ESP
00004: 0003 53          PUSH    EBX
00005: 0004 56          PUSH    ESI
00006: 0005 57          PUSH    EDI
00007: 0006 81 EC 00000134 SUB  ESP, 00000134
{
/* Compute in-place inverse complex fft on the rows of the input array	*/
/* INPUTS */
/* M = log2 of fft size	*/
/* *ioptr = input data array	*/
/* *Utbl = cosine table	*/
/* Rows = number of rows in ioptr array (use Rows of 1 if ioptr is a 1 dimensional array)	*/
/* OUTPUTS */
/* *ioptr = output data array	*/

long 	Flyinc;
long	FlyOffsetA;
long	FlyOffsetAIm;
long	FlyOffsetB;
long	FlyOffsetBIm;
long 	NsameU1;
long 	NsameU2;
long 	NsameU4;
long 	diffUcnt;
long 	LoopCnt;

float	scale;
float	fly0r;
float	fly0i;
float	fly1r;
float	fly1i;
float	fly2r;
float	fly2i;
float	fly3r;
float	fly3i;
float	fly4r;
float	fly4i;
float	fly5r;
float	fly5i;
float	fly6r;
float	fly6i;
float	fly7r;
float	fly7i;
float	U0r;
float	U0i;
float	U1r;
float	U1i;
float	U2r;
float	U2i;
float	U3r;
float	U3i;
float	t0r;
float	t0i;
float	t1r;
float	t1i;

float	*fly0P;
float	*fly1P;
float	*fly2P;
float	*fly3P;
float	*U0rP;
float	*U0iP;
float	*U1rP;
float	*U1iP;
float	*U2rP;
float	*U2iP;
float	*IOP;
long	U3offset;

long 	stage;
long 	NdiffU;
long 	LoopN;

const long BRshift = MAXMROOT - (M>>1);
00009: 000C 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00012: 000F C7 85 FFFFFF5400000009 MOV DWORD PTR FFFFFF54[EBP], 00000009
00010: 0019 D1 FA       SAR     EDX, 00000001
00011: 001B             NOOP    
00013: 001B 29 95 FFFFFF54SUB   DWORD PTR FFFFFF54[EBP], EDX
00014: 0021             NOOP    
const long BRshift = MAXMROOT - (M>>1);
const long Nrems2 = Ntbl[M-(M>>1)+1];
00016: 0021 8B 5D 0C    MOV     EBX, DWORD PTR 0000000C[EBP]
00017: 0024 29 D3       SUB     EBX, EDX
00018: 0026             NOOP    
00019: 0026 8B 04 9D 00000004 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+00000004[EBX*4]
00020: 002D 89 85 FFFFFF68MOV   DWORD PTR FFFFFF68[EBP], EAX
const long Nrems2 = Ntbl[M-(M>>1)+1];
const long Nroot_1_ColInc = (Ntbl[M-1]-Ntbl[M-(M>>1)])*2;
00022: 0033 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00023: 0036 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
00035: 003D B9 00000003 MOV     ECX, 00000003
00024: 0042 89 85 FFFFFF5CMOV   DWORD PTR FFFFFF5C[EBP], EAX
00025: 0048 2B 04 9D 00000000 SUB EAX, DWORD PTR ?Ntbl@@3PBJB[EBX*4]
00026: 004F 89 85 FFFFFF5CMOV   DWORD PTR FFFFFF5C[EBP], EAX
00027: 0055 D1 A5 FFFFFF5CSHL   DWORD PTR FFFFFF5C[EBP], 00000001
00028: 005B             NOOP    
00029: 005B 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00030: 005E 89 85 FFFFFF60MOV   DWORD PTR FFFFFF60[EBP], EAX
00031: 0064 D1 BD FFFFFF60SAR   DWORD PTR FFFFFF60[EBP], 00000001
00032: 006A             NOOP    
00033: 006A 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00034: 006D 83 C2 FF    ADD     EDX, FFFFFFFF
00036: 0070 89 D0       MOV     EAX, EDX
00037: 0072 99          CDQ     
00038: 0073 F7 F9       IDIV    ECX
00039: 0075 89 85 FFFFFF64MOV   DWORD PTR FFFFFF64[EBP], EAX
00040: 007B             NOOP    
const long Nroot_1_ColInc = (Ntbl[M-1]-Ntbl[M-(M>>1)])*2;

for (;Rows>0;Rows--){
00042: 007B E9 00001981 JMP     L0001
00043: 0080     L0002
for (;Rows>0;Rows--){

FlyOffsetA = Ntbl[M] * 2/2;
00045: 0080 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00046: 0083 8B 04 8D 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ECX*4]
00050: 008A B9 00000002 MOV     ECX, 00000002
00047: 008F 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
00048: 0095 89 C2       MOV     EDX, EAX
00049: 0097 D1 E2       SHL     EDX, 00000001
00051: 0099 89 D0       MOV     EAX, EDX
00052: 009B 99          CDQ     
00053: 009C F7 F9       IDIV    ECX
00054: 009E 89 85 FFFFFEC4MOV   DWORD PTR FFFFFEC4[EBP], EAX
00055: 00A4             NOOP    
FlyOffsetA = Ntbl[M] * 2/2;
FlyOffsetAIm = FlyOffsetA + 1;
00057: 00A4 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00058: 00AA 89 85 FFFFFEDCMOV   DWORD PTR FFFFFEDC[EBP], EAX
00059: 00B0 83 85 FFFFFEDC01 ADD DWORD PTR FFFFFEDC[EBP], 00000001
00060: 00B7             NOOP    
FlyOffsetAIm = FlyOffsetA + 1;
FlyOffsetB = FlyOffsetA + 2;
00062: 00B7 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00063: 00BD 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
00064: 00C3 83 85 FFFFFEE802 ADD DWORD PTR FFFFFEE8[EBP], 00000002
00065: 00CA             NOOP    
FlyOffsetB = FlyOffsetA + 2;
FlyOffsetBIm = FlyOffsetB + 1;
00067: 00CA 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00068: 00D0 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
00069: 00D6 83 85 FFFFFEEC01 ADD DWORD PTR FFFFFEEC[EBP], 00000001
00070: 00DD             NOOP    
FlyOffsetBIm = FlyOffsetB + 1;

/* BitrevR2 ** bit reverse and first radix 2 stage ******/

scale = 1./Ntbl[M];
00072: 00DD DB 85 FFFFFF6CFILD  DWORD PTR FFFFFF6C[EBP]
00073: 00E3 D9 E8       FLD1    
00074: 00E5 DE F1       FDIVRP  ST(1), ST
00075: 00E7 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
00076: 00ED D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
00077: 00F3 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
scale = 1./Ntbl[M];
for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
00079: 00F9 C7 85 FFFFFF4000000000 MOV DWORD PTR FFFFFF40[EBP], 00000000
00080: 0103 8B 75 0C    MOV     ESI, DWORD PTR 0000000C[EBP]
00083: 0106 8B 85 FFFFFF5CMOV   EAX, DWORD PTR FFFFFF5C[EBP]
00081: 010C D1 FE       SAR     ESI, 00000001
00082: 010E             NOOP    
00084: 010E 89 85 FFFFFEF4MOV   DWORD PTR FFFFFEF4[EBP], EAX
00085: 0114 C1 A5 FFFFFEF402 SHL DWORD PTR FFFFFEF4[EBP], 00000002
00086: 011B             NOOP    
00087: 011B 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00088: 011E 89 85 FFFFFEC0MOV   DWORD PTR FFFFFEC0[EBP], EAX
00089: 0124 2B 85 FFFFFF60SUB   EAX, DWORD PTR FFFFFF60[EBP]
00090: 012A 89 85 FFFFFEC0MOV   DWORD PTR FFFFFEC0[EBP], EAX
00091: 0130             NOOP    
00092: 0130 E9 0000049E JMP     L0003
00093: 0135     L0004
for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
	for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
00095: 0135 8B 04 B5 FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ESI*4]
00114: 013C B9 00000002 MOV     ECX, 00000002
00096: 0141 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
00097: 0147 83 85 FFFFFF28FF ADD DWORD PTR FFFFFF28[EBP], FFFFFFFF
00098: 014E             NOOP    
00099: 014E 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00100: 0151 89 85 FFFFFECCMOV   DWORD PTR FFFFFECC[EBP], EAX
00101: 0157 D1 BD FFFFFECCSAR   DWORD PTR FFFFFECC[EBP], 00000001
00102: 015D             NOOP    
00103: 015D 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00104: 0160 89 85 FFFFFEE4MOV   DWORD PTR FFFFFEE4[EBP], EAX
00105: 0166 03 85 FFFFFEF4ADD   EAX, DWORD PTR FFFFFEF4[EBP]
00106: 016C 89 85 FFFFFEE4MOV   DWORD PTR FFFFFEE4[EBP], EAX
00107: 0172             NOOP    
00108: 0172 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
00109: 0178 89 85 FFFFFEE0MOV   DWORD PTR FFFFFEE0[EBP], EAX
00110: 017E C1 A5 FFFFFEE002 SHL DWORD PTR FFFFFEE0[EBP], 00000002
00111: 0185             NOOP    
00112: 0185 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00113: 0188 83 C2 01    ADD     EDX, 00000001
00115: 018B 89 D0       MOV     EAX, EDX
00116: 018D 99          CDQ     
00117: 018E F7 F9       IDIV    ECX
00118: 0190 89 85 FFFFFEF0MOV   DWORD PTR FFFFFEF0[EBP], EAX
00119: 0196             NOOP    
00120: 0196 E9 0000041C JMP     L0005
00121: 019B     L0006
for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
		LoopCnt = (Ntbl[(M>>1)-1]-1);
00123: 019B 8B 8D FFFFFECCMOV   ECX, DWORD PTR FFFFFECC[EBP]
00124: 01A1 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
00125: 01A8 89 85 FFFFFEF8MOV   DWORD PTR FFFFFEF8[EBP], EAX
00126: 01AE 83 85 FFFFFEF8FF ADD DWORD PTR FFFFFEF8[EBP], FFFFFFFF
00127: 01B5             NOOP    
LoopCnt = (Ntbl[(M>>1)-1]-1);
		fly0P = ioptr + Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
00129: 01B5 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
00132: 01BB 8B 8D FFFFFF54MOV   ECX, DWORD PTR FFFFFF54[EBP]
00130: 01C1 8A 90 00000000 MOV  DL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00140: 01C7 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
00131: 01CD 81 E2 000000FF AND  EDX, 000000FF
00133: 01D3 D3 FA       SAR     EDX, ECX
00134: 01D5 C1 E2 04    SHL     EDX, 00000004
00139: 01D8 8B 8D FFFFFEF0MOV   ECX, DWORD PTR FFFFFEF0[EBP]
00135: 01DE 03 95 FFFFFEE4ADD   EDX, DWORD PTR FFFFFEE4[EBP]
00136: 01E4 03 95 FFFFFEE0ADD   EDX, DWORD PTR FFFFFEE0[EBP]
00137: 01EA             NOOP    
fly0P = ioptr + Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
		IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
00141: 01EA 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
00142: 01F0 D3 A5 FFFFFF14SHL   DWORD PTR FFFFFF14[EBP], ECX
00143: 01F6 C1 A5 FFFFFF1403 SHL DWORD PTR FFFFFF14[EBP], 00000003
00144: 01FD 8B 85 FFFFFF14MOV   EAX, DWORD PTR FFFFFF14[EBP]
00145: 0203 03 45 08    ADD     EAX, DWORD PTR 00000008[EBP]
00146: 0206 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
00147: 020C 03 85 FFFFFEE0ADD   EAX, DWORD PTR FFFFFEE0[EBP]
00148: 0212 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
00149: 0218             NOOP    
IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
		fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
00151: 0218 8B 85 FFFFFEF8MOV   EAX, DWORD PTR FFFFFEF8[EBP]
00154: 021E 8B 8D FFFFFF54MOV   ECX, DWORD PTR FFFFFF54[EBP]
00152: 0224 8A 98 00000000 MOV  BL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00160: 022A 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00153: 022C 81 E3 000000FF AND  EBX, 000000FF
00155: 0232 D3 FB       SAR     EBX, ECX
00156: 0234 C1 E3 04    SHL     EBX, 00000004
00157: 0237 03 9D FFFFFF14ADD   EBX, DWORD PTR FFFFFF14[EBP]
00158: 023D             NOOP    
fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
		fly0r = *(fly0P);
00161: 023D 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly0P);
		fly0i = *(fly0P+1);
00163: 0243 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00164: 0246 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly0P+1);
		fly1r = *(fly0P+FlyOffsetA);
00166: 0249 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00167: 024F 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00168: 0252 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
		fly1i = *(fly0P+FlyOffsetAIm);
00170: 0255 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00171: 025B 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00172: 025E 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
00173: 0261 8B BD FFFFFF68MOV   EDI, DWORD PTR FFFFFF68[EBP]
00174: 0267 C1 E7 02    SHL     EDI, 00000002
00175: 026A E9 00000247 JMP     L0019
00176: 026F     L0008
fly1i = *(fly0P+FlyOffsetAIm);
		for (; LoopCnt > LoopN;){
			fly2r = *(fly0P+2);
00178: 026F 8B 42 08    MOV     EAX, DWORD PTR 00000008[EDX]
00179: 0272 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly0P+2);
			fly2i = *(fly0P+(2+1));
00181: 0275 8B 42 0C    MOV     EAX, DWORD PTR 0000000C[EDX]
00182: 0278 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly0P+(2+1));
			fly3r = *(fly0P+FlyOffsetB);
00184: 027B 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00185: 0281 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00186: 0284 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
			fly3i = *(fly0P+FlyOffsetBIm);
00188: 0287 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00189: 028D 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00190: 0290 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);
			fly4r = *(fly1P);
00192: 0293 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00193: 0295 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly1P);
			fly4i = *(fly1P+1);
00195: 0298 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00196: 029B 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly1P+1);
			fly5r = *(fly1P+FlyOffsetA);
00198: 029E 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00199: 02A4 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00200: 02A7 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly5r = *(fly1P+FlyOffsetA);
			fly5i = *(fly1P+FlyOffsetAIm);
00202: 02AA 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00203: 02B0 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00204: 02B3 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly5i = *(fly1P+FlyOffsetAIm);
			fly6r = *(fly1P+2);
00206: 02B6 8B 43 08    MOV     EAX, DWORD PTR 00000008[EBX]
00207: 02B9 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly1P+2);
			fly6i = *(fly1P+(2+1));
00209: 02BC 8B 43 0C    MOV     EAX, DWORD PTR 0000000C[EBX]
00210: 02BF 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly1P+(2+1));
			fly7r = *(fly1P+FlyOffsetB);
00212: 02C2 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00213: 02C8 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00214: 02CB 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
fly7r = *(fly1P+FlyOffsetB);
			fly7i = *(fly1P+FlyOffsetBIm);
00216: 02CE 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00217: 02D4 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00218: 02D7 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
fly7i = *(fly1P+FlyOffsetBIm);
			
			t0r   = fly0r + fly1r;
00220: 02DA D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00221: 02DD D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00222: 02E3 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r   = fly0r + fly1r;
			t0i   = fly0i + fly1i;
00224: 02E6 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00225: 02E9 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00226: 02EC D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i   = fly0i + fly1i;
			fly1r = fly0r - fly1r;
00228: 02EF D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00229: 02F2 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00230: 02F8 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r - fly1r;
			fly1i = fly0i - fly1i;
00232: 02FB D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00233: 02FE D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00234: 0301 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - fly1i;
			t1r   = fly2r + fly3r;
00236: 0304 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00237: 0307 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00238: 030A D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r   = fly2r + fly3r;
			t1i   = fly2i + fly3i;
00240: 030D D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00241: 0310 D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00242: 0313 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i   = fly2i + fly3i;
			fly3r = fly2r - fly3r;
00244: 0316 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00245: 0319 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00246: 031C D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly2r - fly3r;
			fly3i = fly2i - fly3i;
00248: 031F D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00249: 0322 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00250: 0325 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly2i - fly3i;
			fly0r = fly4r + fly5r;
00252: 0328 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00253: 032B D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00254: 032E D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly4r + fly5r;
			fly0i = fly4i + fly5i;
00256: 0334 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00257: 0337 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
00258: 033A D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly4i + fly5i;
			fly5r = fly4r - fly5r;
00260: 033D D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00261: 0340 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00262: 0343 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly4r - fly5r;
			fly5i = fly4i - fly5i;
00264: 0346 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00265: 0349 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00266: 034C D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly4i - fly5i;
			fly2r = fly6r + fly7r;
00268: 034F D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00269: 0352 D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
00270: 0355 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly6r + fly7r;
			fly2i = fly6i + fly7i;
00272: 0358 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00273: 035B D8 45 B0    FADD    DWORD PTR FFFFFFB0[EBP]
00274: 035E D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly6i + fly7i;
			fly7r = fly6r - fly7r;
00276: 0361 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00277: 0364 D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
00278: 0367 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = fly6r - fly7r;
			fly7i = fly6i - fly7i;
00280: 036A D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00281: 036D D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
00282: 0370 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = fly6i - fly7i;

			*(fly1P) = scale*t0r;
00284: 0373 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
00285: 0376 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00286: 037C D9 1B       FSTP    DWORD PTR 00000000[EBX]
*(fly1P) = scale*t0r;
			*(fly1P+1) = scale*t0i;
00288: 037E D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00289: 0381 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00290: 0387 D9 5B 04    FSTP    DWORD PTR 00000004[EBX]
*(fly1P+1) = scale*t0i;
			*(fly1P+2) = scale*fly1r;
00292: 038A D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00293: 038D D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00294: 0393 D9 5B 08    FSTP    DWORD PTR 00000008[EBX]
*(fly1P+2) = scale*fly1r;
			*(fly1P+(2+1)) = scale*fly1i;
00296: 0396 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00297: 0399 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00298: 039F D9 5B 0C    FSTP    DWORD PTR 0000000C[EBX]
*(fly1P+(2+1)) = scale*fly1i;
			*(fly1P+FlyOffsetA) = scale*t1r;
00300: 03A2 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
00301: 03A5 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00302: 03AB 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00303: 03B1 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly1P+FlyOffsetA) = scale*t1r;
			*(fly1P+FlyOffsetAIm) = scale*t1i;
00305: 03B4 D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
00306: 03B7 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00307: 03BD 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00308: 03C3 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly1P+FlyOffsetAIm) = scale*t1i;
			*(fly1P+FlyOffsetB) = scale*fly3r;
00310: 03C6 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00311: 03C9 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00312: 03CF 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00313: 03D5 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly1P+FlyOffsetB) = scale*fly3r;
			*(fly1P+FlyOffsetBIm) = scale*fly3i;
00315: 03D8 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00316: 03DB D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00317: 03E1 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00318: 03E7 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly1P+FlyOffsetBIm) = scale*fly3i;
			*(fly0P) = scale*fly0r;
00320: 03EA D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00321: 03F0 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00322: 03F6 D9 1A       FSTP    DWORD PTR 00000000[EDX]
*(fly0P) = scale*fly0r;
			*(fly0P+1) = scale*fly0i;
00324: 03F8 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00325: 03FB D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00326: 0401 D9 5A 04    FSTP    DWORD PTR 00000004[EDX]
*(fly0P+1) = scale*fly0i;
			*(fly0P+2) = scale*fly5r;
00328: 0404 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00329: 0407 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00330: 040D D9 5A 08    FSTP    DWORD PTR 00000008[EDX]
*(fly0P+2) = scale*fly5r;
			*(fly0P+(2+1)) = scale*fly5i;
00332: 0410 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00333: 0413 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00334: 0419 D9 5A 0C    FSTP    DWORD PTR 0000000C[EDX]
*(fly0P+(2+1)) = scale*fly5i;
			*(fly0P+FlyOffsetA) = scale*fly2r;
00336: 041C D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00337: 041F D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00338: 0425 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00339: 042B D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetA) = scale*fly2r;
			*(fly0P+FlyOffsetAIm) = scale*fly2i;
00341: 042E D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00342: 0431 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00343: 0437 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00344: 043D D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetAIm) = scale*fly2i;
			*(fly0P+FlyOffsetB) = scale*fly7r;
00346: 0440 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00347: 0443 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00348: 0449 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00349: 044F D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetB) = scale*fly7r;
			*(fly0P+FlyOffsetBIm) = scale*fly7i;
00351: 0452 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00352: 0455 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00353: 045B 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00354: 0461 D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetBIm) = scale*fly7i;

			fly0P -= Nrems2;
00356: 0464 29 FA       SUB     EDX, EDI
fly0P -= Nrems2;
			fly0r = *(fly0P);
00358: 0466 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00359: 0468 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly0P);
			fly0i = *(fly0P+1);
00361: 046E 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00362: 0471 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly0P+1);
			fly1r = *(fly0P+FlyOffsetA);
00364: 0474 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00365: 047A 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00366: 047D 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
			fly1i = *(fly0P+FlyOffsetAIm);
00368: 0480 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00369: 0486 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00370: 0489 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly0P+FlyOffsetAIm);
			LoopCnt -= 1;
00372: 048C 83 AD FFFFFEF801 SUB DWORD PTR FFFFFEF8[EBP], 00000001
LoopCnt -= 1;
			fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
00374: 0493 8B 85 FFFFFEF8MOV   EAX, DWORD PTR FFFFFEF8[EBP]
00377: 0499 8B 8D FFFFFF54MOV   ECX, DWORD PTR FFFFFF54[EBP]
00375: 049F 8A 98 00000000 MOV  BL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00376: 04A5 81 E3 000000FF AND  EBX, 000000FF
00378: 04AB D3 FB       SAR     EBX, ECX
00379: 04AD C1 E3 04    SHL     EBX, 00000004
00380: 04B0 03 9D FFFFFF14ADD   EBX, DWORD PTR FFFFFF14[EBP]
00381: 04B6     L0019
00382: 04B6             NOOP    
fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
		};
00384: 04B6     L0007
00385: 04B6 8B 85 FFFFFEF8MOV   EAX, DWORD PTR FFFFFEF8[EBP]
00386: 04BC 3B 85 FFFFFF28CMP   EAX, DWORD PTR FFFFFF28[EBP]
00387: 04C2 0F 8F FFFFFDA7 JG   L0008
};
		fly2r = *(fly0P+2);
00389: 04C8 8B 42 08    MOV     EAX, DWORD PTR 00000008[EDX]
00390: 04CB 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly0P+2);
		fly2i = *(fly0P+(2+1));
00392: 04CE 8B 42 0C    MOV     EAX, DWORD PTR 0000000C[EDX]
00393: 04D1 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly0P+(2+1));
		fly3r = *(fly0P+FlyOffsetB);
00395: 04D4 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00396: 04DA 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00397: 04DD 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
		fly3i = *(fly0P+FlyOffsetBIm);
00399: 04E0 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00400: 04E6 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00401: 04E9 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);

		t0r   = fly0r + fly1r;
00403: 04EC D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00404: 04EF D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00405: 04F5 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r   = fly0r + fly1r;
		t0i   = fly0i + fly1i;
00407: 04F8 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00408: 04FB D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00409: 04FE D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i   = fly0i + fly1i;
		fly1r = fly0r - fly1r;
00411: 0501 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00412: 0504 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00413: 050A D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r - fly1r;
		fly1i = fly0i - fly1i;
00415: 050D D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00416: 0510 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00417: 0513 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - fly1i;
		t1r   = fly2r + fly3r;
00419: 0516 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00420: 0519 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00421: 051C D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r   = fly2r + fly3r;
		t1i   = fly2i + fly3i;
00423: 051F D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00424: 0522 D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00425: 0525 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i   = fly2i + fly3i;
		fly3r = fly2r - fly3r;
00427: 0528 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00428: 052B D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00429: 052E D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly2r - fly3r;
		fly3i = fly2i - fly3i;
00431: 0531 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00432: 0534 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00433: 0537 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly2i - fly3i;

		*(fly0P) = scale*t0r;
00435: 053A D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
00436: 053D D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00437: 0543 D9 1A       FSTP    DWORD PTR 00000000[EDX]
*(fly0P) = scale*t0r;
		*(fly0P+1) = scale*t0i;
00439: 0545 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00440: 0548 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00441: 054E D9 5A 04    FSTP    DWORD PTR 00000004[EDX]
*(fly0P+1) = scale*t0i;
		*(fly0P+2) = scale*fly1r;
00443: 0551 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00444: 0554 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00445: 055A D9 5A 08    FSTP    DWORD PTR 00000008[EDX]
*(fly0P+2) = scale*fly1r;
		*(fly0P+(2+1)) = scale*fly1i;
00447: 055D D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00448: 0560 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00449: 0566 D9 5A 0C    FSTP    DWORD PTR 0000000C[EDX]
*(fly0P+(2+1)) = scale*fly1i;
		*(fly0P+FlyOffsetA) = scale*t1r;
00451: 0569 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
00452: 056C D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00453: 0572 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00454: 0578 D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetA) = scale*t1r;
		*(fly0P+FlyOffsetAIm) = scale*t1i;
00456: 057B D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
00457: 057E D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00458: 0584 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00459: 058A D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetAIm) = scale*t1i;
		*(fly0P+FlyOffsetB) = scale*fly3r;
00461: 058D D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00462: 0590 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00463: 0596 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00464: 059C D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetB) = scale*fly3r;
		*(fly0P+FlyOffsetBIm) = scale*fly3i;
00466: 059F D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00467: 05A2 D8 8D FFFFFF78FMUL  DWORD PTR FFFFFF78[EBP]
00468: 05A8 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00469: 05AE D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly0P+FlyOffsetBIm) = scale*fly3i;

	};
00471: 05B1 FF 8D FFFFFF28DEC   DWORD PTR FFFFFF28[EBP]
00472: 05B7     L0005
00473: 05B7 83 BD FFFFFF2800 CMP DWORD PTR FFFFFF28[EBP], 00000000
00474: 05BE 0F 8D FFFFFBD7 JGE  L0006
};
};
00476: 05C4 8B 04 B5 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ESI*4]
00477: 05CB D1 E0       SHL     EAX, 00000001
00478: 05CD 01 85 FFFFFF40ADD   DWORD PTR FFFFFF40[EBP], EAX
00479: 05D3     L0003
00480: 05D3 8B 85 FFFFFEC0MOV   EAX, DWORD PTR FFFFFEC0[EBP]
00481: 05D9 8B 04 85 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
00482: 05E0 D1 E0       SHL     EAX, 00000001
00483: 05E2 39 85 FFFFFF40CMP   DWORD PTR FFFFFF40[EBP], EAX
00484: 05E8 0F 8C FFFFFB47 JL   L0004
};

/**** FFTC  **************/

scale = 2.0;

NdiffU = 2;
00486: 05EE C7 85 FFFFFF5800000002 MOV DWORD PTR FFFFFF58[EBP], 00000002
NdiffU = 2;
Flyinc =  (NdiffU);
00488: 05F8 C7 85 FFFFFF3800000002 MOV DWORD PTR FFFFFF38[EBP], 00000002
Flyinc =  (NdiffU);

NsameU4 = Ntbl[M]/4;
00490: 0602 BB 00000004 MOV     EBX, 00000004
00491: 0607 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00492: 060A 8B 04 8D 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ECX*4]
00493: 0611 99          CDQ     
00494: 0612 F7 FB       IDIV    EBX
00495: 0614 89 85 FFFFFF34MOV   DWORD PTR FFFFFF34[EBP], EAX
00496: 061A             NOOP    
NsameU4 = Ntbl[M]/4;
LoopN = Ntbl[M-3];
00498: 061A 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00499: 061D 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
00500: 0624 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
LoopN = Ntbl[M-3];

stage = ((M-1)/3);
00502: 062A 8B 85 FFFFFF64MOV   EAX, DWORD PTR FFFFFF64[EBP]
00503: 0630 89 85 FFFFFF40MOV   DWORD PTR FFFFFF40[EBP], EAX
stage = ((M-1)/3);
if ( (M-1-(stage * 3)) != 0 ){
00507: 0636 8D 51 FF    LEA     EDX, DWORD PTR FFFFFFFF[ECX]
00505: 0639 6B C0 03    IMUL    EAX, 00000003
00506: 063C             NOOP    
00508: 063C 29 C2       SUB     EDX, EAX
00509: 063E             NOOP    
00510: 063E 09 D2       OR      EDX, EDX
00511: 0640 0F 84 000005C2 JE   L0009
if ( (M-1-(stage * 3)) != 0 ){
	FlyOffsetA =  Flyinc << 2;
00513: 0646 C7 85 FFFFFEC400000008 MOV DWORD PTR FFFFFEC4[EBP], 00000008
FlyOffsetA =  Flyinc << 2;
	FlyOffsetB =  FlyOffsetA << 1;
00515: 0650 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00516: 0656 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
00517: 065C D1 A5 FFFFFEE8SHL   DWORD PTR FFFFFEE8[EBP], 00000001
00518: 0662             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
	FlyOffsetAIm =  FlyOffsetA + 1;
00520: 0662 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00521: 0668 89 85 FFFFFEDCMOV   DWORD PTR FFFFFEDC[EBP], EAX
00522: 066E 83 85 FFFFFEDC01 ADD DWORD PTR FFFFFEDC[EBP], 00000001
00523: 0675             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
	FlyOffsetBIm =  FlyOffsetB + 1;
	if ( (M-1-(stage * 3)) == 1 ){
00525: 0675 83 FA 01    CMP     EDX, 00000001
00526: 0678 0F 85 0000023F JNE  L000A
if ( (M-1-(stage * 3)) == 1 ){
		/* 1 radix 2 stage */

		IOP = ioptr;
00528: 067E 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00533: 0681 BF 00000008 MOV     EDI, 00000008
00529: 0686 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
IOP = ioptr;
		fly0P = IOP;
00531: 068C 89 C2       MOV     EDX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
00546: 068E 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
00534: 0694 89 D3       MOV     EBX, EDX
00547: 0696 89 85 FFFFFEF8MOV   DWORD PTR FFFFFEF8[EBP], EAX
00535: 069C 01 FB       ADD     EBX, EDI
00536: 069E             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
00538: 069E 89 D9       MOV     ECX, EBX
00548: 06A0 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00539: 06A6 01 F9       ADD     ECX, EDI
00540: 06A8             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
00542: 06A8 89 CE       MOV     ESI, ECX
00549: 06AA 89 85 FFFFFED0MOV   DWORD PTR FFFFFED0[EBP], EAX
00543: 06B0 01 FE       ADD     ESI, EDI
00544: 06B2             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0
			t1	-	-	t1
			f2	-  1-	f5
			f1	- -i-	f7
			f4	-	-	f4
			f0	-	-	f0
			f6	-  1-	f2
			f3	- -i-	f1
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
00550: 06B2 C1 A5 FFFFFED002 SHL DWORD PTR FFFFFED0[EBP], 00000002
00551: 06B9             NOOP    
00552: 06B9 E9 000001D5 JMP     L000B
00553: 06BE     L000C
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
00555: 06BE 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00556: 06C0 89 45 DC    MOV     DWORD PTR FFFFFFDC[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
00558: 06C3 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00559: 06C6 89 45 E0    MOV     DWORD PTR FFFFFFE0[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
00561: 06C9 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00562: 06CB 89 45 E4    MOV     DWORD PTR FFFFFFE4[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
00564: 06CE 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00565: 06D1 89 45 E8    MOV     DWORD PTR FFFFFFE8[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
00567: 06D4 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
00568: 06D6 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
00570: 06D9 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
00571: 06DC 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
00573: 06DF 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
00574: 06E1 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
00576: 06E4 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
00577: 06E7 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
00579: 06EA 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00580: 06F0 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00581: 06F3 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
00583: 06F6 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00584: 06FC 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00585: 06FF 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
00587: 0702 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00588: 0708 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00589: 070B 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
00591: 0711 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00592: 0717 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00593: 071A 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
00595: 071D 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00596: 0723 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00597: 0726 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
00599: 0729 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00600: 072F 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00601: 0732 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
00603: 0735 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00604: 073B 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00605: 073E 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
00607: 0741 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00608: 0747 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00609: 074A 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
		
			fly5r = t0r - fly2r;
00611: 074D D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00612: 0750 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
00613: 0753 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
00615: 0756 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00616: 0759 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
00617: 075C D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
00619: 075F D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00620: 0762 D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
00621: 0765 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
00623: 0768 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00624: 076B D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
00625: 076E D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = t0i + fly2i;

			fly7r = t1r + fly1i;
00627: 0771 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00628: 0774 D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
00629: 0777 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r + fly1i;
			fly7i = t1i - fly1r;
00631: 077A D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00632: 077D D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
00633: 0780 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i - fly1r;
			t1r = t1r - fly1i;
00635: 0783 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00636: 0786 D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
00637: 0789 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r - fly1i;
			t1i = t1i + fly1r;
00639: 078C D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00640: 078F D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
00641: 0792 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i + fly1r;

			fly2r = fly4r - fly6r;
00643: 0795 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00644: 0798 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00645: 079B D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
00647: 079E D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00648: 07A1 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00649: 07A4 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
00651: 07A7 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00652: 07AA D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00653: 07AD D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
00655: 07B0 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00656: 07B3 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
00657: 07B6 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i + fly6i;

			fly1r = fly0r + fly3i;
00659: 07B9 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00660: 07BC D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00661: 07C2 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r + fly3i;
			fly1i = fly0i - fly3r;
00663: 07C5 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00664: 07C8 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00665: 07CB D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - fly3r;
			fly0r = fly0r - fly3i;
00667: 07CE D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00668: 07D1 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00669: 07D7 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r - fly3i;
			fly0i = fly0i + fly3r;
00671: 07DD D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00672: 07E0 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00673: 07E3 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i + fly3r;

			*(fly2P) = fly5r;
00675: 07E6 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
00676: 07E9 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
00678: 07EB 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
00679: 07EE 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly0P) = t0r;
00681: 07F1 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
00682: 07F4 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
00684: 07F6 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
00685: 07F9 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;
			*(fly3P) = fly7r;
00687: 07FC 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
00688: 07FF 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
00690: 0801 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
00691: 0804 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
			*(fly1P) = t1r;
00693: 0807 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
00694: 080A 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
00696: 080C 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
00697: 080F 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;
			*(fly2P + FlyOffsetA) = fly2r;
00699: 0812 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
00700: 0815 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00701: 081B 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
00703: 081E 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
00704: 0821 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00705: 0827 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;
			*(fly0P + FlyOffsetA) = fly4r;
00707: 082A 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
00708: 082D 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00709: 0833 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly4r;
			*(fly0P + FlyOffsetAIm) = fly4i;
00711: 0836 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
00712: 0839 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00713: 083F 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly4i;
			*(fly3P + FlyOffsetA) = fly1r;
00715: 0842 8B 7D 84    MOV     EDI, DWORD PTR FFFFFF84[EBP]
00716: 0845 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00717: 084B 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly1r;
			*(fly3P + FlyOffsetAIm) = fly1i;
00719: 084E 8B 7D 88    MOV     EDI, DWORD PTR FFFFFF88[EBP]
00720: 0851 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00721: 0857 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly1i;
			*(fly1P + FlyOffsetA) = fly0r;
00723: 085A 8B BD FFFFFF7CMOV   EDI, DWORD PTR FFFFFF7C[EBP]
00724: 0860 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00725: 0866 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly0r;
			*(fly1P + FlyOffsetAIm) = fly0i;
00727: 0869 8B 7D 80    MOV     EDI, DWORD PTR FFFFFF80[EBP]
00728: 086C 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00729: 0872 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly0i;

			fly0P = (fly0P + FlyOffsetB);
00731: 0875 03 95 FFFFFED0ADD   EDX, DWORD PTR FFFFFED0[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
00733: 087B 03 9D FFFFFED0ADD   EBX, DWORD PTR FFFFFED0[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
00735: 0881 03 8D FFFFFED0ADD   ECX, DWORD PTR FFFFFED0[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
00737: 0887 03 B5 FFFFFED0ADD   ESI, DWORD PTR FFFFFED0[EBP]
fly3P = (fly3P + FlyOffsetB);
		};
00739: 088D FF 8D FFFFFEF8DEC   DWORD PTR FFFFFEF8[EBP]
00740: 0893     L000B
00741: 0893 83 BD FFFFFEF800 CMP DWORD PTR FFFFFEF8[EBP], 00000000
00742: 089A 0F 8F FFFFFE1E JG   L000C
};

		NsameU4 >>= 1;
00744: 08A0 D1 BD FFFFFF34SAR   DWORD PTR FFFFFF34[EBP], 00000001
NsameU4 >>= 1;
		LoopN >>= 1;
00746: 08A6 D1 BD FFFFFF28SAR   DWORD PTR FFFFFF28[EBP], 00000001
LoopN >>= 1;
		NdiffU <<= 1;
00748: 08AC D1 A5 FFFFFF58SHL   DWORD PTR FFFFFF58[EBP], 00000001
NdiffU <<= 1;
		Flyinc = Flyinc << 1;
00750: 08B2 D1 A5 FFFFFF38SHL   DWORD PTR FFFFFF38[EBP], 00000001
Flyinc = Flyinc << 1;
	}
00752: 08B8 E9 0000034B JMP     L000D
00753: 08BD     L000A
}
	else{
		/* 1 radix 4 stage */
		IOP = ioptr;
00755: 08BD 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00764: 08C0 BF 00000008 MOV     EDI, 00000008
00756: 08C5 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
IOP = ioptr;

		U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
00758: 08CB C7 45 D4 3F3504F3 MOV DWORD PTR FFFFFFD4[EBP], 3F3504F3
U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
		U3i = U3r;	
00760: 08D2 C7 45 D8 3F3504F3 MOV DWORD PTR FFFFFFD8[EBP], 3F3504F3
U3i = U3r;	
		fly0P = IOP;
00762: 08D9 89 C2       MOV     EDX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
00777: 08DB 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
00765: 08E1 89 D3       MOV     EBX, EDX
00778: 08E3 89 85 FFFFFEF8MOV   DWORD PTR FFFFFEF8[EBP], EAX
00766: 08E9 01 FB       ADD     EBX, EDI
00767: 08EB             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
00769: 08EB 89 D9       MOV     ECX, EBX
00779: 08ED 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
00770: 08F3 01 F9       ADD     ECX, EDI
00771: 08F5             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
00773: 08F5 89 CE       MOV     ESI, ECX
00780: 08F7 89 85 FFFFFED4MOV   DWORD PTR FFFFFED4[EBP], EAX
00774: 08FD 01 FE       ADD     ESI, EDI
00775: 08FF             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0	-	-	t0
			t1	-	-	t1	-	-	t1
			f2	-  1-	f5	-	-	f5
			f1	- -i-	f7	-	-	f7
			f4	-	-	f4	-  1-	f6
			f0	-	-	f0	-U3	-	f3
			f6	-  1-	f2	- -i-	f4
			f3	- -i-	f1	-U3a-	f2
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
00781: 08FF C1 A5 FFFFFED402 SHL DWORD PTR FFFFFED4[EBP], 00000002
00782: 0906             NOOP    
00783: 0906 E9 000002D4 JMP     L000E
00784: 090B     L000F
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
00786: 090B 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00787: 090D 89 45 DC    MOV     DWORD PTR FFFFFFDC[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
00789: 0910 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00790: 0913 89 45 E0    MOV     DWORD PTR FFFFFFE0[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
00792: 0916 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00793: 0918 89 45 E4    MOV     DWORD PTR FFFFFFE4[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
00795: 091B 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00796: 091E 89 45 E8    MOV     DWORD PTR FFFFFFE8[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
00798: 0921 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
00799: 0923 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
00801: 0926 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
00802: 0929 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
00804: 092C 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
00805: 092E 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
00807: 0931 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
00808: 0934 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
00810: 0937 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00811: 093D 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00812: 0940 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
00814: 0943 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00815: 0949 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00816: 094C 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
00818: 094F 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00819: 0955 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00820: 0958 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
00822: 095E 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00823: 0964 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00824: 0967 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
00826: 096A 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00827: 0970 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00828: 0973 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
00830: 0976 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00831: 097C 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00832: 097F 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
00834: 0982 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
00835: 0988 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00836: 098B 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
00838: 098E 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
00839: 0994 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00840: 0997 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
	
			fly5r = t0r - fly2r;
00842: 099A D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00843: 099D D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
00844: 09A0 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
00846: 09A3 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00847: 09A6 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
00848: 09A9 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
00850: 09AC D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00851: 09AF D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
00852: 09B2 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
00854: 09B5 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00855: 09B8 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
00856: 09BB D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = t0i + fly2i;
	
			fly7r = t1r + fly1i;
00858: 09BE D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00859: 09C1 D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
00860: 09C4 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r + fly1i;
			fly7i = t1i - fly1r;
00862: 09C7 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00863: 09CA D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
00864: 09CD D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i - fly1r;
			t1r = t1r - fly1i;
00866: 09D0 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00867: 09D3 D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
00868: 09D6 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r - fly1i;
			t1i = t1i + fly1r;
00870: 09D9 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00871: 09DC D8 45 E8    FADD    DWORD PTR FFFFFFE8[EBP]
00872: 09DF D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i + fly1r;
	
			fly2r = fly4r - fly6r;
00874: 09E2 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00875: 09E5 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00876: 09E8 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
00878: 09EB D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00879: 09EE D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00880: 09F1 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
00882: 09F4 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00883: 09F7 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00884: 09FA D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
00886: 09FD D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00887: 0A00 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
00888: 0A03 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i + fly6i;
	
			fly1r = fly0r + fly3i;
00890: 0A06 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00891: 0A09 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00892: 0A0F D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r + fly3i;
			fly1i = fly0i - fly3r;
00894: 0A12 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00895: 0A15 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00896: 0A18 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - fly3r;
			fly0r = fly0r - fly3i;
00898: 0A1B D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00899: 0A1E D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00900: 0A24 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r - fly3i;
			fly0i = fly0i + fly3r;
00902: 0A2A D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00903: 0A2D D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00904: 0A30 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i + fly3r;
	
			fly6r = t0r - fly4r;
00906: 0A33 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00907: 0A36 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
00908: 0A39 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = t0r - fly4r;
			fly6i = t0i - fly4i;
00910: 0A3C D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00911: 0A3F D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
00912: 0A42 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = t0i - fly4i;
			t0r = t0r + fly4r;
00914: 0A45 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00915: 0A48 D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
00916: 0A4B D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = t0r + fly4r;
			t0i = t0i + fly4i;
00918: 0A4E D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00919: 0A51 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
00920: 0A54 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = t0i + fly4i;
	
			fly3r = fly5r + fly2i;
00922: 0A57 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00923: 0A5A D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
00924: 0A5D D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly5r + fly2i;
			fly3i = fly5i - fly2r;
00926: 0A60 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00927: 0A63 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
00928: 0A66 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly5i - fly2r;
			fly5r = fly5r - fly2i;
00930: 0A69 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00931: 0A6C D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
00932: 0A6F D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r - fly2i;
			fly5i = fly5i + fly2r;
00934: 0A72 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00935: 0A75 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
00936: 0A78 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i + fly2r;
	
			fly4r = t1r - U3r * fly0r;
00938: 0A7B D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00939: 0A81 D8 0D 00000000 FMUL DWORD PTR .data+00000298
00940: 0A87 D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
00941: 0A8A D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r + U3i * fly0i;
00943: 0A8D D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00944: 0A90 D8 0D 00000000 FMUL DWORD PTR .data+0000029c
00945: 0A96 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00946: 0A99 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r + U3i * fly0i;
			fly4i = t1i - U3i * fly0r;
00948: 0A9C D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00949: 0AA2 D8 0D 00000000 FMUL DWORD PTR .data+000002a0
00950: 0AA8 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
00951: 0AAB D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = t1i - U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
00953: 0AAE D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00954: 0AB1 D8 0D 00000000 FMUL DWORD PTR .data+000002a4
00955: 0AB7 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00956: 0ABA D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
00958: 0ABD D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
00959: 0AC0 D8 0D 00000000 FMUL DWORD PTR .data+000002a8
00960: 0AC6 D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
00961: 0AC9 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
00963: 0ACC D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
00964: 0ACF D8 0D 00000000 FMUL DWORD PTR .data+000002ac
00965: 0AD5 D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
00966: 0AD8 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly4i;
	
			fly2r = fly7r + U3i * fly1r;
00968: 0ADB D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00969: 0ADE D8 0D 00000000 FMUL DWORD PTR .data+000002b0
00970: 0AE4 D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
00971: 0AE7 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly7r + U3i * fly1r;
			fly2r = fly2r + U3r * fly1i;
00973: 0AEA D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00974: 0AED D8 0D 00000000 FMUL DWORD PTR .data+000002b4
00975: 0AF3 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00976: 0AF6 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly2r + U3r * fly1i;
			fly2i = fly7i - U3r * fly1r;
00978: 0AF9 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00979: 0AFC D8 0D 00000000 FMUL DWORD PTR .data+000002b8
00980: 0B02 D8 6D B8    FSUBR   DWORD PTR FFFFFFB8[EBP]
00981: 0B05 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly7i - U3r * fly1r;
			fly2i = fly2i + U3i * fly1i;
00983: 0B08 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00984: 0B0B D8 0D 00000000 FMUL DWORD PTR .data+000002bc
00985: 0B11 D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00986: 0B14 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly2i + U3i * fly1i;
			fly7r = scale * fly7r - fly2r;
00988: 0B17 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00989: 0B1A D8 0D 00000000 FMUL DWORD PTR .data+000002c0
00990: 0B20 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
00991: 0B23 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = scale * fly7r - fly2r;
			fly7i = scale * fly7i - fly2i;
00993: 0B26 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00994: 0B29 D8 0D 00000000 FMUL DWORD PTR .data+000002c4
00995: 0B2F D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
00996: 0B32 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = scale * fly7i - fly2i;
	
			*(fly0P + FlyOffsetA) = fly6r;
00998: 0B35 8B 7D AC    MOV     EDI, DWORD PTR FFFFFFAC[EBP]
00999: 0B38 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01000: 0B3E 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
01002: 0B41 8B 7D B0    MOV     EDI, DWORD PTR FFFFFFB0[EBP]
01003: 0B44 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01004: 0B4A 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
01006: 0B4D 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
01007: 0B50 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
01009: 0B52 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
01010: 0B55 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;
			*(fly2P + FlyOffsetA) = fly3r;
01012: 0B58 8B 7D 94    MOV     EDI, DWORD PTR FFFFFF94[EBP]
01013: 0B5B 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01014: 0B61 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly3r;
			*(fly2P + FlyOffsetAIm) = fly3i;
01016: 0B64 8B 7D 98    MOV     EDI, DWORD PTR FFFFFF98[EBP]
01017: 0B67 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01018: 0B6D 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly3i;
			*(fly2P) = fly5r;
01020: 0B70 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
01021: 0B73 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
01023: 0B75 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
01024: 0B78 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly1P + FlyOffsetA) = fly4r;
01026: 0B7B 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
01027: 0B7E 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01028: 0B84 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
01030: 0B87 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
01031: 0B8A 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01032: 0B90 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
01034: 0B93 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
01035: 0B96 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
01037: 0B98 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
01038: 0B9B 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;
			*(fly3P + FlyOffsetA) = fly2r;
01040: 0B9E 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
01041: 0BA1 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01042: 0BA7 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly2r;
			*(fly3P + FlyOffsetAIm) = fly2i;
01044: 0BAA 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
01045: 0BAD 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01046: 0BB3 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly2i;
			*(fly3P) = fly7r;
01048: 0BB6 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
01049: 0BB9 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01051: 0BBB 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
01052: 0BBE 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
		
			fly0P = (fly0P + FlyOffsetB);
01054: 0BC1 03 95 FFFFFED4ADD   EDX, DWORD PTR FFFFFED4[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01056: 0BC7 03 9D FFFFFED4ADD   EBX, DWORD PTR FFFFFED4[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01058: 0BCD 03 8D FFFFFED4ADD   ECX, DWORD PTR FFFFFED4[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01060: 0BD3 03 B5 FFFFFED4ADD   ESI, DWORD PTR FFFFFED4[EBP]
fly3P = (fly3P + FlyOffsetB);

		};
01062: 0BD9 FF 8D FFFFFEF8DEC   DWORD PTR FFFFFEF8[EBP]
01063: 0BDF     L000E
01064: 0BDF 83 BD FFFFFEF800 CMP DWORD PTR FFFFFEF8[EBP], 00000000
01065: 0BE6 0F 8F FFFFFD1F JG   L000F
};

		NsameU4 >>= 2;
01067: 0BEC C1 BD FFFFFF3402 SAR DWORD PTR FFFFFF34[EBP], 00000002
NsameU4 >>= 2;
		LoopN >>= 2;
01069: 0BF3 C1 BD FFFFFF2802 SAR DWORD PTR FFFFFF28[EBP], 00000002
LoopN >>= 2;
		NdiffU <<= 2;
01071: 0BFA C1 A5 FFFFFF5802 SHL DWORD PTR FFFFFF58[EBP], 00000002
NdiffU <<= 2;
		Flyinc = Flyinc << 2;
01073: 0C01 C1 A5 FFFFFF3802 SHL DWORD PTR FFFFFF38[EBP], 00000002
Flyinc = Flyinc << 2;
	};
01075: 0C08     L000D
};
};
01077: 0C08     L0009
};

NsameU2 = NsameU4 >> 1;
01079: 0C08 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
01080: 0C0E 89 85 FFFFFF0CMOV   DWORD PTR FFFFFF0C[EBP], EAX
01081: 0C14 D1 BD FFFFFF0CSAR   DWORD PTR FFFFFF0C[EBP], 00000001
01082: 0C1A             NOOP    
NsameU2 = NsameU4 >> 1;
NsameU1 = NsameU2 >> 1;
01084: 0C1A 8B 85 FFFFFF0CMOV   EAX, DWORD PTR FFFFFF0C[EBP]
01085: 0C20 89 85 FFFFFF1CMOV   DWORD PTR FFFFFF1C[EBP], EAX
01086: 0C26 D1 BD FFFFFF1CSAR   DWORD PTR FFFFFF1C[EBP], 00000001
01087: 0C2C             NOOP    
NsameU1 = NsameU2 >> 1;
Flyinc <<= 1;
01089: 0C2C D1 A5 FFFFFF38SHL   DWORD PTR FFFFFF38[EBP], 00000001
Flyinc <<= 1;
FlyOffsetA =  Flyinc << 2;
01091: 0C32 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
01092: 0C38 89 85 FFFFFEC4MOV   DWORD PTR FFFFFEC4[EBP], EAX
01093: 0C3E C1 A5 FFFFFEC402 SHL DWORD PTR FFFFFEC4[EBP], 00000002
01094: 0C45             NOOP    
FlyOffsetA =  Flyinc << 2;
FlyOffsetB =  FlyOffsetA << 1;
01096: 0C45 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01097: 0C4B 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
01098: 0C51 D1 A5 FFFFFEE8SHL   DWORD PTR FFFFFEE8[EBP], 00000001
01099: 0C57             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
FlyOffsetAIm =  FlyOffsetA + 1;
01101: 0C57 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01102: 0C5D 89 85 FFFFFEDCMOV   DWORD PTR FFFFFEDC[EBP], EAX
01103: 0C63 83 85 FFFFFEDC01 ADD DWORD PTR FFFFFEDC[EBP], 00000001
01104: 0C6A             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
FlyOffsetBIm =  FlyOffsetB + 1;
01106: 0C6A 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01107: 0C70 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
01108: 0C76 83 85 FFFFFEEC01 ADD DWORD PTR FFFFFEEC[EBP], 00000001
01109: 0C7D             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
LoopN >>= 1;
01111: 0C7D D1 BD FFFFFF28SAR   DWORD PTR FFFFFF28[EBP], 00000001
LoopN >>= 1;

/*   ****** RADIX 8 Stages	*/
for (stage = stage<<1; stage > 0 ; stage--){
01113: 0C83 D1 A5 FFFFFF40SHL   DWORD PTR FFFFFF40[EBP], 00000001
01114: 0C89 E9 00000D53 JMP     L0010
01115: 0C8E     L0011
for (stage = stage<<1; stage > 0 ; stage--){

	/* an fft stage is done in two parts to ease use of the single quadrant cos table	*/

/*	fftcalc1(iobuf, Utbl, N, NdiffU, LoopN);	*/
	if(!(stage&1)){
01117: 0C8E 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
01118: 0C94 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
01119: 0C9A 81 A5 FFFFFF2C00000001 AND DWORD PTR FFFFFF2C[EBP], 00000001
01120: 0CA4             NOOP    
01121: 0CA4 83 BD FFFFFF2C00 CMP DWORD PTR FFFFFF2C[EBP], 00000000
01122: 0CAB 0F 85 000000CC JNE  L0012
if(!(stage&1)){
		U0rP = &Utbl[0];
01124: 0CB1 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01148: 0CB4 BB 00000008 MOV     EBX, 00000008
01125: 0CB9 89 85 FFFFFF44MOV   DWORD PTR FFFFFF44[EBP], EAX
U0rP = &Utbl[0];
		U0iP = &Utbl[Ntbl[M-2]];
01127: 0CBF 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01128: 0CC2 8B 04 8D FFFFFFF8 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF8[ECX*4]
01129: 0CC9 89 85 FFFFFF24MOV   DWORD PTR FFFFFF24[EBP], EAX
01130: 0CCF C1 A5 FFFFFF2402 SHL DWORD PTR FFFFFF24[EBP], 00000002
01131: 0CD6 8B 85 FFFFFF24MOV   EAX, DWORD PTR FFFFFF24[EBP]
01132: 0CDC 03 45 14    ADD     EAX, DWORD PTR 00000014[EBP]
01133: 0CDF 89 85 FFFFFF24MOV   DWORD PTR FFFFFF24[EBP], EAX
01134: 0CE5             NOOP    
U0iP = &Utbl[Ntbl[M-2]];
		U1rP = U0rP;
01136: 0CE5 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01137: 0CE8 89 85 FFFFFF48MOV   DWORD PTR FFFFFF48[EBP], EAX
U1rP = U0rP;
		U1iP = U0iP;
01139: 0CEE 8B 85 FFFFFF24MOV   EAX, DWORD PTR FFFFFF24[EBP]
01140: 0CF4 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
U1iP = U0iP;
		U2rP = U0rP;
01142: 0CFA 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01143: 0CFD 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
U2rP = U0rP;
		U2iP = U0iP;
01145: 0D03 8B 85 FFFFFF24MOV   EAX, DWORD PTR FFFFFF24[EBP]
01146: 0D09 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
U2iP = U0iP;
		U3offset = (Ntbl[M]) / 8;
01149: 0D0F 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01150: 0D12 8B 04 8D 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ECX*4]
01151: 0D19 99          CDQ     
01152: 0D1A F7 FB       IDIV    EBX
01153: 0D1C 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
01154: 0D22             NOOP    
U3offset = (Ntbl[M]) / 8;

		IOP = ioptr;
01156: 0D22 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
01157: 0D25 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
IOP = ioptr;
	
		U0r =  *U0rP,
01159: 0D2B 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01160: 0D2E D9 00       FLD     DWORD PTR 00000000[EAX]
01161: 0D30 D9 55 EC    FST     DWORD PTR FFFFFFEC[EBP]
01162: 0D33 D9 5D BC    FSTP    DWORD PTR FFFFFFBC[EBP]
01163: 0D36 8B 85 FFFFFF24MOV   EAX, DWORD PTR FFFFFF24[EBP]
01164: 0D3C D9 00       FLD     DWORD PTR 00000000[EAX]
01165: 0D3E D9 55 F0    FST     DWORD PTR FFFFFFF0[EBP]
01166: 0D41 D9 5D C0    FSTP    DWORD PTR FFFFFFC0[EBP]
U0r =  *U0rP,
		U0i =  *U0iP;
		U1r =  *U1rP,
01168: 0D44 8B 45 EC    MOV     EAX, DWORD PTR FFFFFFEC[EBP]
01169: 0D47 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
01170: 0D4A 8B 45 F0    MOV     EAX, DWORD PTR FFFFFFF0[EBP]
01171: 0D4D 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U1r =  *U1rP,
		U1i =  *U1iP;
		U2r =  *U2rP,
01173: 0D50 8B 45 EC    MOV     EAX, DWORD PTR FFFFFFEC[EBP]
01174: 0D53 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
01175: 0D56 8B 45 F0    MOV     EAX, DWORD PTR FFFFFFF0[EBP]
01176: 0D59 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
U2r =  *U2rP,
		U2i =  *U2iP;
		U3r =  *( U2rP + U3offset);
01178: 0D5C 8B 8D FFFFFF30MOV   ECX, DWORD PTR FFFFFF30[EBP]
01179: 0D62 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01183: 0D65 89 CA       MOV     EDX, ECX
01180: 0D67 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
01184: 0D6A C1 E2 02    SHL     EDX, 00000002
01181: 0D6D 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
U3r =  *( U2rP + U3offset);
		U3i =  *( U2iP - U3offset);
01185: 0D70 8B 85 FFFFFF24MOV   EAX, DWORD PTR FFFFFF24[EBP]
01186: 0D76 29 D0       SUB     EAX, EDX
01187: 0D78 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01188: 0D7A 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
U3i =  *( U2iP - U3offset);
	}
01190: 0D7D     L0012
}
	
	fly0P = IOP;
01192: 0D7D 8B 95 FFFFFF14MOV   EDX, DWORD PTR FFFFFF14[EBP]
fly0P = IOP;
	fly1P = (IOP+Flyinc);
01194: 0D83 8B BD FFFFFF38MOV   EDI, DWORD PTR FFFFFF38[EBP]
01197: 0D89 8B 9D FFFFFF14MOV   EBX, DWORD PTR FFFFFF14[EBP]
01195: 0D8F C1 E7 02    SHL     EDI, 00000002
01196: 0D92             NOOP    
01198: 0D92 01 FB       ADD     EBX, EDI
01199: 0D94             NOOP    
fly1P = (IOP+Flyinc);
	fly2P = (fly1P+Flyinc);
01201: 0D94 89 D9       MOV     ECX, EBX
01209: 0D96 8B 85 FFFFFF58MOV   EAX, DWORD PTR FFFFFF58[EBP]
01202: 0D9C 01 F9       ADD     ECX, EDI
01203: 0D9E             NOOP    
fly2P = (fly1P+Flyinc);
	fly3P = (fly2P+Flyinc);
01205: 0D9E 89 CE       MOV     ESI, ECX
01210: 0DA0 89 85 FFFFFF10MOV   DWORD PTR FFFFFF10[EBP], EAX
01206: 0DA6 01 FE       ADD     ESI, EDI
01207: 0DA8             NOOP    
fly3P = (fly2P+Flyinc);

	for (diffUcnt = (NdiffU)>>1; diffUcnt > 0; diffUcnt--){
01211: 0DA8 D1 BD FFFFFF10SAR   DWORD PTR FFFFFF10[EBP], 00000001
01212: 0DAE             NOOP    
01213: 0DAE 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
01214: 0DB4 89 85 FFFFFF00MOV   DWORD PTR FFFFFF00[EBP], EAX
01215: 0DBA C1 A5 FFFFFF0002 SHL DWORD PTR FFFFFF00[EBP], 00000002
01216: 0DC1             NOOP    
01217: 0DC1 8B 85 FFFFFF0CMOV   EAX, DWORD PTR FFFFFF0C[EBP]
01218: 0DC7 89 85 FFFFFF04MOV   DWORD PTR FFFFFF04[EBP], EAX
01219: 0DCD C1 A5 FFFFFF0402 SHL DWORD PTR FFFFFF04[EBP], 00000002
01220: 0DD4             NOOP    
01221: 0DD4 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
01222: 0DDA 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
01223: 0DE0 81 A5 FFFFFF2000000001 AND DWORD PTR FFFFFF20[EBP], 00000001
01224: 0DEA             NOOP    
01225: 0DEA 8B 85 FFFFFF1CMOV   EAX, DWORD PTR FFFFFF1C[EBP]
01226: 0DF0 89 85 FFFFFF08MOV   DWORD PTR FFFFFF08[EBP], EAX
01227: 0DF6 C1 A5 FFFFFF0802 SHL DWORD PTR FFFFFF08[EBP], 00000002
01228: 0DFD             NOOP    
01229: 0DFD 8B 85 FFFFFF30MOV   EAX, DWORD PTR FFFFFF30[EBP]
01230: 0E03 89 85 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], EAX
01231: 0E09 C1 A5 FFFFFF1802 SHL DWORD PTR FFFFFF18[EBP], 00000002
01232: 0E10             NOOP    
01233: 0E10 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
01234: 0E16 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
01235: 0E1C C1 A5 FFFFFEFC02 SHL DWORD PTR FFFFFEFC[EBP], 00000002
01236: 0E23             NOOP    
01237: 0E23 E9 00000B31 JMP     L0013
01238: 0E28     L0014
for (diffUcnt = (NdiffU)>>1; diffUcnt > 0; diffUcnt--){

			/* Butterflys		*/
			/*
			f0	-	-	t0	-	-	t0	-	-	t0
			f1	-U0	-	t1	-	-	t1	-	-	t1
			f2	-	-	f2	-U1	-	f5	-	-	f3
			f3	-U0	-	f1	-U1a-	f7	-	-	f7
			f4	-	-	f4	-	-	f4	-U2	-	f6
			f5	-U0	-	f0	-	-	f0	-U3	-	f4
			f6	-	-	f6	-U1	-	f2	-U2a-	f2
			f7	-U0	-	f3	-U1a-	f1	-U3a-	f5
			*/
		
		fly0r = *(IOP);
01240: 0E28 8B 85 FFFFFF14MOV   EAX, DWORD PTR FFFFFF14[EBP]
01241: 0E2E 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01242: 0E30 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(IOP);
		fly0i = *(IOP+1);
01244: 0E36 8B 85 FFFFFF14MOV   EAX, DWORD PTR FFFFFF14[EBP]
01245: 0E3C 8B 40 04    MOV     EAX, DWORD PTR 00000004[EAX]
01246: 0E3F 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(IOP+1);
		fly1r = *(fly1P);
01248: 0E42 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
01249: 0E44 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly1P);
		fly1i = *(fly1P+1);
01251: 0E47 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
01252: 0E4A 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly1P+1);

		for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
01254: 0E4D 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
01255: 0E53 89 85 FFFFFEF8MOV   DWORD PTR FFFFFEF8[EBP], EAX
01256: 0E59 83 85 FFFFFEF8FF ADD DWORD PTR FFFFFEF8[EBP], FFFFFFFF
01257: 0E60             NOOP    
01258: 0E60 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01259: 0E66 89 85 FFFFFED8MOV   DWORD PTR FFFFFED8[EBP], EAX
01260: 0E6C C1 A5 FFFFFED802 SHL DWORD PTR FFFFFED8[EBP], 00000002
01261: 0E73             NOOP    
01262: 0E73 E9 0000051C JMP     L0015
01263: 0E78     L0016
for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
	
			fly2r = *(fly2P);
01265: 0E78 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01266: 0E7A 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
01268: 0E7D 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01269: 0E80 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
			fly3r = *(fly3P);
01271: 0E83 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01272: 0E85 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P);
			fly3i = *(fly3P + 1);
01274: 0E88 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01275: 0E8B 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
01277: 0E8E 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01278: 0E94 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01279: 0E97 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
01281: 0E9A 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01282: 0EA0 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01283: 0EA3 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly5r = *(fly1P + FlyOffsetA);
01285: 0EA6 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01286: 0EAC 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01287: 0EAF 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
			fly5i = *(fly1P + FlyOffsetAIm);
01289: 0EB2 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01290: 0EB8 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01291: 0EBB 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
01293: 0EBE 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01294: 0EC4 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01295: 0EC7 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
01297: 0ECA 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01298: 0ED0 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01299: 0ED3 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly7r = *(fly3P + FlyOffsetA);
01301: 0ED6 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01302: 0EDC 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01303: 0EDF 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
			fly7i = *(fly3P + FlyOffsetAIm);
01305: 0EE2 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01306: 0EE8 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01307: 0EEB 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

			t1r = fly0r - U0r * fly1r;
01309: 0EEE D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01310: 0EF1 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01311: 0EF4 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01312: 0EFA D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = fly0r - U0r * fly1r;
			t1r = t1r + U0i * fly1i;
01314: 0EFD D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01315: 0F00 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01316: 0F03 D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
01317: 0F06 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r + U0i * fly1i;
			t1i = fly0i - U0i * fly1r;
01319: 0F09 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01320: 0F0C D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01321: 0F0F D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01322: 0F12 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = fly0i - U0i * fly1r;
			t1i = t1i - U0r * fly1i;
01324: 0F15 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01325: 0F18 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01326: 0F1B D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
01327: 0F1E D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i - U0r * fly1i;
			t0r = scale * fly0r - t1r;
01329: 0F21 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01330: 0F27 D8 0D 00000000 FMUL DWORD PTR .data+000002c8
01331: 0F2D D8 65 E4    FSUB    DWORD PTR FFFFFFE4[EBP]
01332: 0F30 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * fly0r - t1r;
			t0i = scale * fly0i - t1i;
01334: 0F33 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01335: 0F36 D8 0D 00000000 FMUL DWORD PTR .data+000002cc
01336: 0F3C D8 65 E8    FSUB    DWORD PTR FFFFFFE8[EBP]
01337: 0F3F D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * fly0i - t1i;
	
			fly1r = fly2r - U0r * fly3r;
01339: 0F42 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01340: 0F45 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01341: 0F48 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01342: 0F4B D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly2r - U0r * fly3r;
			fly1r = fly1r + U0i * fly3i;
01344: 0F4E D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01345: 0F51 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01346: 0F54 D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
01347: 0F57 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r + U0i * fly3i;
			fly1i = fly2i - U0i * fly3r;
01349: 0F5A D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01350: 0F5D D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01351: 0F60 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01352: 0F63 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly2i - U0i * fly3r;
			fly1i = fly1i - U0r * fly3i;
01354: 0F66 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01355: 0F69 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01356: 0F6C D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01357: 0F6F D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i - U0r * fly3i;
			fly2r = scale * fly2r - fly1r;
01359: 0F72 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01360: 0F75 D8 0D 00000000 FMUL DWORD PTR .data+000002d0
01361: 0F7B D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01362: 0F7E D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly2r - fly1r;
			fly2i = scale * fly2i - fly1i;
01364: 0F81 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01365: 0F84 D8 0D 00000000 FMUL DWORD PTR .data+000002d4
01366: 0F8A D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01367: 0F8D D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly2i - fly1i;
	
			fly0r = fly4r - U0r * fly5r;
01369: 0F90 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01370: 0F93 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01371: 0F96 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01372: 0F99 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly4r - U0r * fly5r;
			fly0r = fly0r + U0i * fly5i;
01374: 0F9F D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01375: 0FA2 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01376: 0FA5 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
01377: 0FAB D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r + U0i * fly5i;
			fly0i = fly4i - U0i * fly5r;
01379: 0FB1 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01380: 0FB4 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01381: 0FB7 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01382: 0FBA D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly4i - U0i * fly5r;
			fly0i = fly0i - U0r * fly5i;
01384: 0FBD D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01385: 0FC0 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01386: 0FC3 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01387: 0FC6 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i - U0r * fly5i;
			fly4r = scale * fly4r - fly0r;
01389: 0FC9 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01390: 0FCC D8 0D 00000000 FMUL DWORD PTR .data+000002d8
01391: 0FD2 D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01392: 0FD8 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly0r;
			fly4i = scale * fly4i - fly0i;
01394: 0FDB D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01395: 0FDE D8 0D 00000000 FMUL DWORD PTR .data+000002dc
01396: 0FE4 D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01397: 0FE7 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly0i;
	
			fly3r = fly6r - U0r * fly7r;
01399: 0FEA D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01400: 0FED D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01401: 0FF0 D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
01402: 0FF3 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly6r - U0r * fly7r;
			fly3r = fly3r + U0i * fly7i;
01404: 0FF6 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01405: 0FF9 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01406: 0FFC D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
01407: 0FFF D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r + U0i * fly7i;
			fly3i = fly6i - U0i * fly7r;
01409: 1002 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01410: 1005 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01411: 1008 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
01412: 100B D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly6i - U0i * fly7r;
			fly3i = fly3i - U0r * fly7i;
01414: 100E D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01415: 1011 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01416: 1014 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01417: 1017 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U0r * fly7i;
			fly6r = scale * fly6r - fly3r;
01419: 101A D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01420: 101D D8 0D 00000000 FMUL DWORD PTR .data+000002e0
01421: 1023 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01422: 1026 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = scale * fly6r - fly3r;
			fly6i = scale * fly6i - fly3i;
01424: 1029 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01425: 102C D8 0D 00000000 FMUL DWORD PTR .data+000002e4
01426: 1032 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01427: 1035 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = scale * fly6i - fly3i;
	

			fly5r = t0r - U1r * fly2r;
01429: 1038 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01430: 103B D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01431: 103E D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01432: 1041 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - U1r * fly2r;
			fly5r = fly5r + U1i * fly2i;
01434: 1044 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01435: 1047 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01436: 104A D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
01437: 104D D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r + U1i * fly2i;
			fly5i = t0i - U1i * fly2r;
01439: 1050 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01440: 1053 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01441: 1056 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01442: 1059 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i - U1i * fly2r;
			fly5i = fly5i - U1r * fly2i;
01444: 105C D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01445: 105F D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01446: 1062 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
01447: 1065 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i - U1r * fly2i;
			t0r = scale * t0r - fly5r;
01449: 1068 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01450: 106B D8 0D 00000000 FMUL DWORD PTR .data+000002e8
01451: 1071 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01452: 1074 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly5r;
			t0i = scale * t0i - fly5i;
01454: 1077 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01455: 107A D8 0D 00000000 FMUL DWORD PTR .data+000002ec
01456: 1080 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01457: 1083 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly5i;

			fly7r = t1r + U1i * fly1r;
01459: 1086 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01460: 1089 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01461: 108C D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
01462: 108F D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r + U1i * fly1r;
			fly7r = fly7r + U1r * fly1i;
01464: 1092 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01465: 1095 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01466: 1098 D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
01467: 109B D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = fly7r + U1r * fly1i;
			fly7i = t1i - U1r * fly1r;
01469: 109E D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01470: 10A1 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01471: 10A4 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
01472: 10A7 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i - U1r * fly1r;
			fly7i = fly7i + U1i * fly1i;
01474: 10AA D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01475: 10AD D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01476: 10B0 D8 45 B8    FADD    DWORD PTR FFFFFFB8[EBP]
01477: 10B3 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = fly7i + U1i * fly1i;
			t1r = scale * t1r - fly7r;
01479: 10B6 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
01480: 10B9 D8 0D 00000000 FMUL DWORD PTR .data+000002f0
01481: 10BF D8 65 B4    FSUB    DWORD PTR FFFFFFB4[EBP]
01482: 10C2 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly7r;
			t1i = scale * t1i - fly7i;
01484: 10C5 D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
01485: 10C8 D8 0D 00000000 FMUL DWORD PTR .data+000002f4
01486: 10CE D8 65 B8    FSUB    DWORD PTR FFFFFFB8[EBP]
01487: 10D1 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly7i;

			fly2r = fly4r - U1r * fly6r;
01489: 10D4 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01490: 10D7 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01491: 10DA D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01492: 10DD D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - U1r * fly6r;
			fly2r = fly2r + U1i * fly6i;
01494: 10E0 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01495: 10E3 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01496: 10E6 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
01497: 10E9 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly2r + U1i * fly6i;
			fly2i = fly4i - U1i * fly6r;
01499: 10EC D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01500: 10EF D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01501: 10F2 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01502: 10F5 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i - U1i * fly6r;
			fly2i = fly2i - U1r * fly6i;
01504: 10F8 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01505: 10FB D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01506: 10FE D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01507: 1101 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly2i - U1r * fly6i;
			fly4r = scale * fly4r - fly2r;
01509: 1104 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01510: 1107 D8 0D 00000000 FMUL DWORD PTR .data+000002f8
01511: 110D D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
01512: 1110 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly2r;
			fly4i = scale * fly4i - fly2i;
01514: 1113 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01515: 1116 D8 0D 00000000 FMUL DWORD PTR .data+000002fc
01516: 111C D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
01517: 111F D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly2i;

			fly1r = fly0r + U1i * fly3r;
01519: 1122 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01520: 1125 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01521: 1128 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
01522: 112E D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r + U1i * fly3r;
			fly1r = fly1r + U1r * fly3i;
01524: 1131 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01525: 1134 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01526: 1137 D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
01527: 113A D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r + U1r * fly3i;
			fly1i = fly0i - U1r * fly3r;
01529: 113D D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01530: 1140 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01531: 1143 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01532: 1146 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - U1r * fly3r;
			fly1i = fly1i + U1i * fly3i;
01534: 1149 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01535: 114C D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01536: 114F D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
01537: 1152 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i + U1i * fly3i;
			fly0r = scale * fly0r - fly1r;
01539: 1155 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01540: 115B D8 0D 00000000 FMUL DWORD PTR .data+00000300
01541: 1161 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01542: 1164 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = scale * fly0r - fly1r;
			fly0i = scale * fly0i - fly1i;
01544: 116A D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01545: 116D D8 0D 00000000 FMUL DWORD PTR .data+00000304
01546: 1173 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01547: 1176 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = scale * fly0i - fly1i;

			fly6r = t0r - U2r * fly4r;
01549: 1179 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01550: 117C D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01551: 117F D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01552: 1182 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = t0r - U2r * fly4r;
			fly6r = fly6r + U2i * fly4i;
01554: 1185 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01555: 1188 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01556: 118B D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
01557: 118E D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = fly6r + U2i * fly4i;
			fly6i = t0i - U2i * fly4r;
01559: 1191 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01560: 1194 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01561: 1197 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01562: 119A D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = t0i - U2i * fly4r;
			fly6i = fly6i - U2r * fly4i;
01564: 119D D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01565: 11A0 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01566: 11A3 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
01567: 11A6 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = fly6i - U2r * fly4i;
			t0r = scale * t0r - fly6r;
01569: 11A9 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01570: 11AC D8 0D 00000000 FMUL DWORD PTR .data+00000308
01571: 11B2 D8 65 AC    FSUB    DWORD PTR FFFFFFAC[EBP]
01572: 11B5 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly6r;
			t0i = scale * t0i - fly6i;
01574: 11B8 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01575: 11BB D8 0D 00000000 FMUL DWORD PTR .data+0000030c
01576: 11C1 D8 65 B0    FSUB    DWORD PTR FFFFFFB0[EBP]
01577: 11C4 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly6i;

			fly3r = fly5r - U2i * fly2r;
01579: 11C7 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01580: 11CA D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01581: 11CD D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01582: 11D0 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly5r - U2i * fly2r;
			fly3r = fly3r - U2r * fly2i;
01584: 11D3 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01585: 11D6 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01586: 11D9 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01587: 11DC D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r - U2r * fly2i;
			fly3i = fly5i + U2r * fly2r;
01589: 11DF D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01590: 11E2 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01591: 11E5 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
01592: 11E8 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly5i + U2r * fly2r;
			fly3i = fly3i - U2i * fly2i;
01594: 11EB D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01595: 11EE D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
01596: 11F1 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01597: 11F4 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U2i * fly2i;
			fly2r = scale * fly5r - fly3r;
01599: 11F7 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01600: 11FA D8 0D 00000000 FMUL DWORD PTR .data+00000310
01601: 1200 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01602: 1203 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly5r - fly3r;
			fly2i = scale * fly5i - fly3i;
01604: 1206 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01605: 1209 D8 0D 00000000 FMUL DWORD PTR .data+00000314
01606: 120F D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01607: 1212 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly5i - fly3i;

			fly4r = t1r - U3r * fly0r;
01609: 1215 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01610: 121B D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01611: 121E D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
01612: 1221 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r + U3i * fly0i;
01614: 1224 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01615: 1227 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01616: 122A D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
01617: 122D D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r + U3i * fly0i;
			fly4i = t1i - U3i * fly0r;
01619: 1230 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01620: 1236 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01621: 1239 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
01622: 123C D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = t1i - U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
01624: 123F D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01625: 1242 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01626: 1245 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01627: 1248 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
01629: 124B D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
01630: 124E D8 0D 00000000 FMUL DWORD PTR .data+00000318
01631: 1254 D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
01632: 1257 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
01634: 125A D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
01635: 125D D8 0D 00000000 FMUL DWORD PTR .data+0000031c
01636: 1263 D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
01637: 1266 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly4i;

			fly5r = fly7r + U3i * fly1r;
01639: 1269 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01640: 126C D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01641: 126F D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
01642: 1272 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly7r + U3i * fly1r;
			fly5r = fly5r + U3r * fly1i;
01644: 1275 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01645: 1278 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01646: 127B D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
01647: 127E D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r + U3r * fly1i;
			fly5i = fly7i - U3r * fly1r;
01649: 1281 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01650: 1284 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
01651: 1287 D8 6D B8    FSUBR   DWORD PTR FFFFFFB8[EBP]
01652: 128A D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly7i - U3r * fly1r;
			fly5i = fly5i + U3i * fly1i;
01654: 128D D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01655: 1290 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
01656: 1293 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
01657: 1296 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i + U3i * fly1i;
			fly7r = scale * fly7r - fly5r;
01659: 1299 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01660: 129C D8 0D 00000000 FMUL DWORD PTR .data+00000320
01661: 12A2 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01662: 12A5 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = scale * fly7r - fly5r;
			fly7i = scale * fly7i - fly5i;
01664: 12A8 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01665: 12AB D8 0D 00000000 FMUL DWORD PTR .data+00000324
01666: 12B1 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01667: 12B4 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = scale * fly7i - fly5i;

			*(fly0P + FlyOffsetA) = fly6r;
01669: 12B7 8B 7D AC    MOV     EDI, DWORD PTR FFFFFFAC[EBP]
01670: 12BA 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01671: 12C0 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
01673: 12C3 8B 7D B0    MOV     EDI, DWORD PTR FFFFFFB0[EBP]
01674: 12C6 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01675: 12CC 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
01677: 12CF 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
01678: 12D2 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
01680: 12D4 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
01681: 12D7 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;
			*(fly2P) = fly3r;
01683: 12DA 8B 45 94    MOV     EAX, DWORD PTR FFFFFF94[EBP]
01684: 12DD 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
			*(fly2P + 1) = fly3i;
01686: 12DF 8B 45 98    MOV     EAX, DWORD PTR FFFFFF98[EBP]
01687: 12E2 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
			*(fly2P + FlyOffsetA) = fly2r;
01689: 12E5 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
01690: 12E8 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01691: 12EE 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
01693: 12F1 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
01694: 12F4 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01695: 12FA 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;

			fly0r = *(fly0P + FlyOffsetB);
01697: 12FD 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01698: 1303 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01699: 1306 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly0r = *(fly0P + FlyOffsetB);
			fly0i = *(fly0P + FlyOffsetBIm);
01701: 130C 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01702: 1312 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01703: 1315 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly0i = *(fly0P + FlyOffsetBIm);

			*(fly1P + FlyOffsetA) = fly4r;
01705: 1318 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
01706: 131B 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01707: 1321 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
01709: 1324 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
01710: 1327 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01711: 132D 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
01713: 1330 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
01714: 1333 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
01716: 1335 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
01717: 1338 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;

			fly1r = *(fly1P + FlyOffsetB);
01719: 133B 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
01720: 1341 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01721: 1344 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly1r = *(fly1P + FlyOffsetB);
			fly1i = *(fly1P + FlyOffsetBIm);
01723: 1347 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01724: 134D 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01725: 1350 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly1i = *(fly1P + FlyOffsetBIm);

			*(fly3P + FlyOffsetA) = fly5r;
01727: 1353 8B 7D A4    MOV     EDI, DWORD PTR FFFFFFA4[EBP]
01728: 1356 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01729: 135C 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly5r;
			*(fly3P + FlyOffsetAIm) = fly5i;
01731: 135F 8B 7D A8    MOV     EDI, DWORD PTR FFFFFFA8[EBP]
01732: 1362 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01733: 1368 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly5i;
			*(fly3P) = fly7r;
01735: 136B 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
01736: 136E 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01738: 1370 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
01739: 1373 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

			fly0P = (fly0P + FlyOffsetB);
01741: 1376 03 95 FFFFFED8ADD   EDX, DWORD PTR FFFFFED8[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01743: 137C 03 9D FFFFFED8ADD   EBX, DWORD PTR FFFFFED8[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01745: 1382 03 8D FFFFFED8ADD   ECX, DWORD PTR FFFFFED8[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01747: 1388 03 B5 FFFFFED8ADD   ESI, DWORD PTR FFFFFED8[EBP]
fly3P = (fly3P + FlyOffsetB);

		};
01749: 138E FF 8D FFFFFEF8DEC   DWORD PTR FFFFFEF8[EBP]
01750: 1394     L0015
01751: 1394 83 BD FFFFFEF800 CMP DWORD PTR FFFFFEF8[EBP], 00000000
01752: 139B 0F 8F FFFFFAD7 JG   L0016
};
		fly2r = *(fly2P);
01754: 13A1 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01755: 13A3 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly2r = *(fly2P);
		fly2i = *(fly2P + 1);
01757: 13A6 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01758: 13A9 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly2i = *(fly2P + 1);
		fly3r = *(fly3P);
01760: 13AC 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01761: 13AE 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly3r = *(fly3P);
		fly3i = *(fly3P + 1);
01763: 13B1 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01764: 13B4 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly3i = *(fly3P + 1);
		fly4r = *(fly0P + FlyOffsetA);
01766: 13B7 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01767: 13BD 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01768: 13C0 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
		fly4i = *(fly0P + FlyOffsetAIm);
01770: 13C3 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01771: 13C9 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01772: 13CC 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
		fly5r = *(fly1P + FlyOffsetA);
01774: 13CF 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01775: 13D5 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01776: 13D8 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
		fly5i = *(fly1P + FlyOffsetAIm);
01778: 13DB 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01779: 13E1 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01780: 13E4 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
		fly6r = *(fly2P + FlyOffsetA);
01782: 13E7 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01783: 13ED 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01784: 13F0 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
		fly6i = *(fly2P + FlyOffsetAIm);
01786: 13F3 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01787: 13F9 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01788: 13FC 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
		fly7r = *(fly3P + FlyOffsetA);
01790: 13FF 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
01791: 1405 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01792: 1408 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
		fly7i = *(fly3P + FlyOffsetAIm);
01794: 140B 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
01795: 1411 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01796: 1414 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

		t1r = fly0r - U0r * fly1r;
01798: 1417 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01799: 141A D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01800: 141D D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01801: 1423 D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = fly0r - U0r * fly1r;
		t1r = t1r + U0i * fly1i;
01803: 1426 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01804: 1429 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01805: 142C D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
01806: 142F D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = t1r + U0i * fly1i;
		t1i = fly0i - U0i * fly1r;
01808: 1432 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01809: 1435 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01810: 1438 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01811: 143B D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = fly0i - U0i * fly1r;
		t1i = t1i - U0r * fly1i;
01813: 143E D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01814: 1441 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01815: 1444 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
01816: 1447 D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = t1i - U0r * fly1i;
		t0r = scale * fly0r - t1r;
01818: 144A D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01819: 1450 D8 0D 00000000 FMUL DWORD PTR .data+00000328
01820: 1456 D8 65 E4    FSUB    DWORD PTR FFFFFFE4[EBP]
01821: 1459 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * fly0r - t1r;
		t0i = scale * fly0i - t1i;
01823: 145C D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01824: 145F D8 0D 00000000 FMUL DWORD PTR .data+0000032c
01825: 1465 D8 65 E8    FSUB    DWORD PTR FFFFFFE8[EBP]
01826: 1468 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * fly0i - t1i;

		fly1r = fly2r - U0r * fly3r;
01828: 146B D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01829: 146E D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01830: 1471 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01831: 1474 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly2r - U0r * fly3r;
		fly1r = fly1r + U0i * fly3i;
01833: 1477 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01834: 147A D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01835: 147D D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
01836: 1480 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r + U0i * fly3i;
		fly1i = fly2i - U0i * fly3r;
01838: 1483 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01839: 1486 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01840: 1489 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01841: 148C D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly2i - U0i * fly3r;
		fly1i = fly1i - U0r * fly3i;
01843: 148F D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01844: 1492 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01845: 1495 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01846: 1498 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i - U0r * fly3i;
		fly2r = scale * fly2r - fly1r;
01848: 149B D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01849: 149E D8 0D 00000000 FMUL DWORD PTR .data+00000330
01850: 14A4 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01851: 14A7 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly2r - fly1r;
		fly2i = scale * fly2i - fly1i;
01853: 14AA D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01854: 14AD D8 0D 00000000 FMUL DWORD PTR .data+00000334
01855: 14B3 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01856: 14B6 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly2i - fly1i;

		fly0r = fly4r - U0r * fly5r;
01858: 14B9 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01859: 14BC D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01860: 14BF D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01861: 14C2 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly4r - U0r * fly5r;
		fly0r = fly0r + U0i * fly5i;
01863: 14C8 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01864: 14CB D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01865: 14CE D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
01866: 14D4 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = fly0r + U0i * fly5i;
		fly0i = fly4i - U0i * fly5r;
01868: 14DA D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01869: 14DD D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01870: 14E0 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01871: 14E3 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly4i - U0i * fly5r;
		fly0i = fly0i - U0r * fly5i;
01873: 14E6 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01874: 14E9 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01875: 14EC D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01876: 14EF D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = fly0i - U0r * fly5i;
		fly4r = scale * fly4r - fly0r;
01878: 14F2 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01879: 14F5 D8 0D 00000000 FMUL DWORD PTR .data+00000338
01880: 14FB D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01881: 1501 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly0r;
		fly4i = scale * fly4i - fly0i;
01883: 1504 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01884: 1507 D8 0D 00000000 FMUL DWORD PTR .data+0000033c
01885: 150D D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01886: 1510 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly0i;

		fly3r = fly6r - U0r * fly7r;
01888: 1513 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01889: 1516 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01890: 1519 D8 6D AC    FSUBR   DWORD PTR FFFFFFAC[EBP]
01891: 151C D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly6r - U0r * fly7r;
		fly3r = fly3r + U0i * fly7i;
01893: 151F D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01894: 1522 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01895: 1525 D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
01896: 1528 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r + U0i * fly7i;
		fly3i = fly6i - U0i * fly7r;
01898: 152B D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
01899: 152E D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01900: 1531 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
01901: 1534 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly6i - U0i * fly7r;
		fly3i = fly3i - U0r * fly7i;
01903: 1537 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
01904: 153A D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01905: 153D D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01906: 1540 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U0r * fly7i;
		fly6r = scale * fly6r - fly3r;
01908: 1543 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01909: 1546 D8 0D 00000000 FMUL DWORD PTR .data+00000340
01910: 154C D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01911: 154F D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = scale * fly6r - fly3r;
		fly6i = scale * fly6i - fly3i;
01913: 1552 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01914: 1555 D8 0D 00000000 FMUL DWORD PTR .data+00000344
01915: 155B D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01916: 155E D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = scale * fly6i - fly3i;

		fly5r = t0r - U1r * fly2r;
01918: 1561 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01919: 1564 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01920: 1567 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01921: 156A D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = t0r - U1r * fly2r;
		fly5r = fly5r + U1i * fly2i;
01923: 156D D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01924: 1570 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01925: 1573 D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
01926: 1576 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r + U1i * fly2i;
		fly5i = t0i - U1i * fly2r;
01928: 1579 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01929: 157C D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01930: 157F D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01931: 1582 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = t0i - U1i * fly2r;
		fly5i = fly5i - U1r * fly2i;
01933: 1585 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01934: 1588 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01935: 158B D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
01936: 158E D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i - U1r * fly2i;
		t0r = scale * t0r - fly5r;
01938: 1591 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01939: 1594 D8 0D 00000000 FMUL DWORD PTR .data+00000348
01940: 159A D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01941: 159D D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly5r;
		t0i = scale * t0i - fly5i;
01943: 15A0 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01944: 15A3 D8 0D 00000000 FMUL DWORD PTR .data+0000034c
01945: 15A9 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01946: 15AC D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly5i;

		fly7r = t1r + U1i * fly1r;
01948: 15AF D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01949: 15B2 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01950: 15B5 D8 45 E4    FADD    DWORD PTR FFFFFFE4[EBP]
01951: 15B8 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = t1r + U1i * fly1r;
		fly7r = fly7r + U1r * fly1i;
01953: 15BB D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01954: 15BE D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01955: 15C1 D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
01956: 15C4 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = fly7r + U1r * fly1i;
		fly7i = t1i - U1r * fly1r;
01958: 15C7 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01959: 15CA D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01960: 15CD D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
01961: 15D0 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = t1i - U1r * fly1r;
		fly7i = fly7i + U1i * fly1i;
01963: 15D3 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01964: 15D6 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01965: 15D9 D8 45 B8    FADD    DWORD PTR FFFFFFB8[EBP]
01966: 15DC D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = fly7i + U1i * fly1i;
		t1r = scale * t1r - fly7r;
01968: 15DF D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
01969: 15E2 D8 0D 00000000 FMUL DWORD PTR .data+00000350
01970: 15E8 D8 65 B4    FSUB    DWORD PTR FFFFFFB4[EBP]
01971: 15EB D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly7r;
		t1i = scale * t1i - fly7i;
01973: 15EE D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
01974: 15F1 D8 0D 00000000 FMUL DWORD PTR .data+00000354
01975: 15F7 D8 65 B8    FSUB    DWORD PTR FFFFFFB8[EBP]
01976: 15FA D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly7i;

		fly2r = fly4r - U1r * fly6r;
01978: 15FD D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01979: 1600 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01980: 1603 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01981: 1606 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly4r - U1r * fly6r;
		fly2r = fly2r + U1i * fly6i;
01983: 1609 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01984: 160C D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01985: 160F D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
01986: 1612 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = fly2r + U1i * fly6i;
		fly2i = fly4i - U1i * fly6r;
01988: 1615 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01989: 1618 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01990: 161B D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01991: 161E D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly4i - U1i * fly6r;
		fly2i = fly2i - U1r * fly6i;
01993: 1621 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01994: 1624 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01995: 1627 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01996: 162A D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = fly2i - U1r * fly6i;
		fly4r = scale * fly4r - fly2r;
01998: 162D D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01999: 1630 D8 0D 00000000 FMUL DWORD PTR .data+00000358
02000: 1636 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
02001: 1639 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = scale * fly4r - fly2r;
		fly4i = scale * fly4i - fly2i;
02003: 163C D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02004: 163F D8 0D 00000000 FMUL DWORD PTR .data+0000035c
02005: 1645 D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
02006: 1648 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = scale * fly4i - fly2i;

		fly1r = fly0r + U1i * fly3r;
02008: 164B D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
02009: 164E D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02010: 1651 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
02011: 1657 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly0r + U1i * fly3r;
		fly1r = fly1r + U1r * fly3i;
02013: 165A D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
02014: 165D D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02015: 1660 D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
02016: 1663 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly1r = fly1r + U1r * fly3i;
		fly1i = fly0i - U1r * fly3r;
02018: 1666 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
02019: 1669 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02020: 166C D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
02021: 166F D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly0i - U1r * fly3r;
		fly1i = fly1i + U1i * fly3i;
02023: 1672 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
02024: 1675 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02025: 1678 D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
02026: 167B D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly1i = fly1i + U1i * fly3i;
		fly0r = scale * fly0r - fly1r;
02028: 167E D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02029: 1684 D8 0D 00000000 FMUL DWORD PTR .data+00000360
02030: 168A D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
02031: 168D D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly0r = scale * fly0r - fly1r;
		fly0i = scale * fly0i - fly1i;
02033: 1693 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02034: 1696 D8 0D 00000000 FMUL DWORD PTR .data+00000364
02035: 169C D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
02036: 169F D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly0i = scale * fly0i - fly1i;

		U0i = *(U0iP = (U0iP - NsameU4));
02038: 16A2 8B 85 FFFFFF24MOV   EAX, DWORD PTR FFFFFF24[EBP]
02039: 16A8 2B 85 FFFFFF00SUB   EAX, DWORD PTR FFFFFF00[EBP]
02040: 16AE 89 85 FFFFFF24MOV   DWORD PTR FFFFFF24[EBP], EAX
02041: 16B4 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02042: 16B6 89 45 C0    MOV     DWORD PTR FFFFFFC0[EBP], EAX
U0i = *(U0iP = (U0iP - NsameU4));
		U0r = *(U0rP = (U0rP + NsameU4));		
02044: 16B9 8B 85 FFFFFF44MOV   EAX, DWORD PTR FFFFFF44[EBP]
02045: 16BF 03 85 FFFFFF00ADD   EAX, DWORD PTR FFFFFF00[EBP]
02046: 16C5 89 85 FFFFFF44MOV   DWORD PTR FFFFFF44[EBP], EAX
02047: 16CB 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02048: 16CD 89 45 BC    MOV     DWORD PTR FFFFFFBC[EBP], EAX
U0r = *(U0rP = (U0rP + NsameU4));		
		U1r = *(U1rP = (U1rP + NsameU2));
02050: 16D0 8B 85 FFFFFF48MOV   EAX, DWORD PTR FFFFFF48[EBP]
02051: 16D6 03 85 FFFFFF04ADD   EAX, DWORD PTR FFFFFF04[EBP]
02052: 16DC 89 85 FFFFFF48MOV   DWORD PTR FFFFFF48[EBP], EAX
02053: 16E2 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02054: 16E4 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
U1r = *(U1rP = (U1rP + NsameU2));
		U1i = *(U1iP = (U1iP - NsameU2));
02056: 16E7 8B 85 FFFFFF4CMOV   EAX, DWORD PTR FFFFFF4C[EBP]
02057: 16ED 2B 85 FFFFFF04SUB   EAX, DWORD PTR FFFFFF04[EBP]
02058: 16F3 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
02059: 16F9 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02060: 16FB 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U1i = *(U1iP = (U1iP - NsameU2));
		if(stage&1)
02062: 16FE 83 BD FFFFFF2000 CMP DWORD PTR FFFFFF20[EBP], 00000000
02063: 1705 74 08       JE      L0017
if(stage&1)
			U0r = - U0r;
02065: 1707 D9 45 BC    FLD     DWORD PTR FFFFFFBC[EBP]
02066: 170A D9 E0       FCHS    
02067: 170C D9 5D BC    FSTP    DWORD PTR FFFFFFBC[EBP]
02068: 170F     L0017
U0r = - U0r;

		fly6r = t0r - U2r * fly4r;
02070: 170F D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
02071: 1712 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02072: 1715 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
02073: 1718 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = t0r - U2r * fly4r;
		fly6r = fly6r + U2i * fly4i;
02075: 171B D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02076: 171E D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02077: 1721 D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
02078: 1724 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly6r = fly6r + U2i * fly4i;
		fly6i = t0i - U2i * fly4r;
02080: 1727 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
02081: 172A D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02082: 172D D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
02083: 1730 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = t0i - U2i * fly4r;
		fly6i = fly6i - U2r * fly4i;
02085: 1733 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02086: 1736 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02087: 1739 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
02088: 173C D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly6i = fly6i - U2r * fly4i;
		t0r = scale * t0r - fly6r;
02090: 173F D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
02091: 1742 D8 0D 00000000 FMUL DWORD PTR .data+00000368
02092: 1748 D8 65 AC    FSUB    DWORD PTR FFFFFFAC[EBP]
02093: 174B D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t0r = scale * t0r - fly6r;
		t0i = scale * t0i - fly6i;
02095: 174E D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
02096: 1751 D8 0D 00000000 FMUL DWORD PTR .data+0000036c
02097: 1757 D8 65 B0    FSUB    DWORD PTR FFFFFFB0[EBP]
02098: 175A D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t0i = scale * t0i - fly6i;

		fly3r = fly5r - U2i * fly2r;
02100: 175D D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02101: 1760 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02102: 1763 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
02103: 1766 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly5r - U2i * fly2r;
		fly3r = fly3r - U2r * fly2i;
02105: 1769 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02106: 176C D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02107: 176F D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
02108: 1772 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly3r = fly3r - U2r * fly2i;
		fly3i = fly5i + U2r * fly2r;
02110: 1775 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02111: 1778 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02112: 177B D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
02113: 177E D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly5i + U2r * fly2r;
		fly3i = fly3i - U2i * fly2i;
02115: 1781 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02116: 1784 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02117: 1787 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
02118: 178A D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly3i = fly3i - U2i * fly2i;
		fly2r = scale * fly5r - fly3r;
02120: 178D D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
02121: 1790 D8 0D 00000000 FMUL DWORD PTR .data+00000370
02122: 1796 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
02123: 1799 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly2r = scale * fly5r - fly3r;
		fly2i = scale * fly5i - fly3i;
02125: 179C D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
02126: 179F D8 0D 00000000 FMUL DWORD PTR .data+00000374
02127: 17A5 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
02128: 17A8 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly2i = scale * fly5i - fly3i;

		fly4r = t1r - U3r * fly0r;
02130: 17AB D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02131: 17B1 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02132: 17B4 D8 6D E4    FSUBR   DWORD PTR FFFFFFE4[EBP]
02133: 17B7 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = t1r - U3r * fly0r;
		fly4r = fly4r + U3i * fly0i;
02135: 17BA D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02136: 17BD D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02137: 17C0 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
02138: 17C3 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly4r = fly4r + U3i * fly0i;
		fly4i = t1i - U3i * fly0r;
02140: 17C6 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02141: 17CC D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02142: 17CF D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
02143: 17D2 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = t1i - U3i * fly0r;
		fly4i = fly4i - U3r * fly0i;
02145: 17D5 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02146: 17D8 D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02147: 17DB D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
02148: 17DE D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly4i = fly4i - U3r * fly0i;
		t1r = scale * t1r - fly4r;
02150: 17E1 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
02151: 17E4 D8 0D 00000000 FMUL DWORD PTR .data+00000378
02152: 17EA D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
02153: 17ED D9 5D E4    FSTP    DWORD PTR FFFFFFE4[EBP]
t1r = scale * t1r - fly4r;
		t1i = scale * t1i - fly4i;
02155: 17F0 D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
02156: 17F3 D8 0D 00000000 FMUL DWORD PTR .data+0000037c
02157: 17F9 D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
02158: 17FC D9 5D E8    FSTP    DWORD PTR FFFFFFE8[EBP]
t1i = scale * t1i - fly4i;

		fly5r = fly7r + U3i * fly1r;
02160: 17FF D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02161: 1802 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02162: 1805 D8 45 B4    FADD    DWORD PTR FFFFFFB4[EBP]
02163: 1808 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly7r + U3i * fly1r;
		fly5r = fly5r + U3r * fly1i;
02165: 180B D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02166: 180E D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02167: 1811 D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
02168: 1814 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly5r = fly5r + U3r * fly1i;
		fly5i = fly7i - U3r * fly1r;
02170: 1817 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02171: 181A D8 4D D4    FMUL    DWORD PTR FFFFFFD4[EBP]
02172: 181D D8 6D B8    FSUBR   DWORD PTR FFFFFFB8[EBP]
02173: 1820 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly7i - U3r * fly1r;
		fly5i = fly5i + U3i * fly1i;
02175: 1823 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02176: 1826 D8 4D D8    FMUL    DWORD PTR FFFFFFD8[EBP]
02177: 1829 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
02178: 182C D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly5i = fly5i + U3i * fly1i;
		fly7r = scale * fly7r - fly5r;
02180: 182F D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
02181: 1832 D8 0D 00000000 FMUL DWORD PTR .data+00000380
02182: 1838 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
02183: 183B D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
fly7r = scale * fly7r - fly5r;
		fly7i = scale * fly7i - fly5i;
02185: 183E D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
02186: 1841 D8 0D 00000000 FMUL DWORD PTR .data+00000384
02187: 1847 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
02188: 184A D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
fly7i = scale * fly7i - fly5i;

		*(fly0P + FlyOffsetA) = fly6r;
02190: 184D 8B 7D AC    MOV     EDI, DWORD PTR FFFFFFAC[EBP]
02191: 1850 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
02192: 1856 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
		*(fly0P + FlyOffsetAIm) = fly6i;
02194: 1859 8B 7D B0    MOV     EDI, DWORD PTR FFFFFFB0[EBP]
02195: 185C 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
02196: 1862 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
		*(fly0P) = t0r;
02198: 1865 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
02199: 1868 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly0P) = t0r;
		*(fly0P + 1) = t0i;
02201: 186A 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
02202: 186D 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly0P + 1) = t0i;

		U2r = *(U2rP = (U2rP + NsameU1));
02204: 1870 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
02205: 1876 03 85 FFFFFF08ADD   EAX, DWORD PTR FFFFFF08[EBP]
02206: 187C 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
02207: 1882 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02208: 1884 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
U2r = *(U2rP = (U2rP + NsameU1));
		U2i = *(U2iP = (U2iP - NsameU1));
02210: 1887 8B 85 FFFFFF50MOV   EAX, DWORD PTR FFFFFF50[EBP]
02211: 188D 2B 85 FFFFFF08SUB   EAX, DWORD PTR FFFFFF08[EBP]
02212: 1893 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
02213: 1899 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02214: 189B 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
U2i = *(U2iP = (U2iP - NsameU1));

		*(fly2P) = fly3r;
02216: 189E 8B 45 94    MOV     EAX, DWORD PTR FFFFFF94[EBP]
02217: 18A1 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
		*(fly2P + 1) = fly3i;
02219: 18A3 8B 45 98    MOV     EAX, DWORD PTR FFFFFF98[EBP]
02220: 18A6 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
		*(fly2P + FlyOffsetA) = fly2r;
02222: 18A9 8B 55 8C    MOV     EDX, DWORD PTR FFFFFF8C[EBP]
02223: 18AC 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
02224: 18B2 89 14 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDX
*(fly2P + FlyOffsetA) = fly2r;
		*(fly2P + FlyOffsetAIm) = fly2i;
02226: 18B5 8B 55 90    MOV     EDX, DWORD PTR FFFFFF90[EBP]
02227: 18B8 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
02228: 18BE 89 14 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDX
*(fly2P + FlyOffsetAIm) = fly2i;
		*(fly1P + FlyOffsetA) = fly4r;
02230: 18C1 8B 55 9C    MOV     EDX, DWORD PTR FFFFFF9C[EBP]
02231: 18C4 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
02232: 18CA 89 14 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDX
*(fly1P + FlyOffsetA) = fly4r;
		*(fly1P + FlyOffsetAIm) = fly4i;
02234: 18CD 8B 55 A0    MOV     EDX, DWORD PTR FFFFFFA0[EBP]
02235: 18D0 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
02236: 18D6 89 14 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDX
*(fly1P + FlyOffsetAIm) = fly4i;
		*(fly1P) = t1r;
02238: 18D9 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
02239: 18DC 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly1P) = t1r;
		*(fly1P + 1) = t1i;
02241: 18DE 8B 45 E8    MOV     EAX, DWORD PTR FFFFFFE8[EBP]
02242: 18E1 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly1P + 1) = t1i;

		U3r = *( U2rP + U3offset);
02244: 18E4 8B 8D FFFFFF30MOV   ECX, DWORD PTR FFFFFF30[EBP]
02245: 18EA 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
02246: 18F0 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
02247: 18F3 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
U3r = *( U2rP + U3offset);
		U3i = *( U2iP - U3offset);
02249: 18F6 8B 85 FFFFFF50MOV   EAX, DWORD PTR FFFFFF50[EBP]
02250: 18FC 2B 85 FFFFFF18SUB   EAX, DWORD PTR FFFFFF18[EBP]
02251: 1902 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02252: 1904 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
U3i = *( U2iP - U3offset);

		*(fly3P + FlyOffsetA) = fly5r;
02254: 1907 8B 55 A4    MOV     EDX, DWORD PTR FFFFFFA4[EBP]
02255: 190A 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
02256: 1910 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetA) = fly5r;
		*(fly3P + FlyOffsetAIm) = fly5i;
02258: 1913 8B 55 A8    MOV     EDX, DWORD PTR FFFFFFA8[EBP]
02259: 1916 8B 85 FFFFFEDCMOV   EAX, DWORD PTR FFFFFEDC[EBP]
02260: 191C 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetAIm) = fly5i;
		*(fly3P) = fly7r;
02262: 191F 8B 45 B4    MOV     EAX, DWORD PTR FFFFFFB4[EBP]
02263: 1922 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
		*(fly3P + 1) = fly7i;
02265: 1924 8B 45 B8    MOV     EAX, DWORD PTR FFFFFFB8[EBP]
02266: 1927 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

		IOP = IOP + 2;
02268: 192A 83 85 FFFFFF1408 ADD DWORD PTR FFFFFF14[EBP], 00000008
IOP = IOP + 2;
		fly0P = IOP;
02270: 1931 8B 95 FFFFFF14MOV   EDX, DWORD PTR FFFFFF14[EBP]
fly0P = IOP;
		fly1P = (IOP+Flyinc);
02272: 1937 89 D0       MOV     EAX, EDX
02273: 1939 03 85 FFFFFEFCADD   EAX, DWORD PTR FFFFFEFC[EBP]
02274: 193F             NOOP    
02275: 193F 89 C3       MOV     EBX, EAX
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
02277: 1941 89 DF       MOV     EDI, EBX
02278: 1943 03 BD FFFFFEFCADD   EDI, DWORD PTR FFFFFEFC[EBP]
02279: 1949             NOOP    
02280: 1949 89 F9       MOV     ECX, EDI
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
02282: 194B 89 FE       MOV     ESI, EDI
02283: 194D 03 B5 FFFFFEFCADD   ESI, DWORD PTR FFFFFEFC[EBP]
02284: 1953             NOOP    
fly3P = (fly2P+Flyinc);
	};
02286: 1953 FF 8D FFFFFF10DEC   DWORD PTR FFFFFF10[EBP]
02287: 1959     L0013
02288: 1959 83 BD FFFFFF1000 CMP DWORD PTR FFFFFF10[EBP], 00000000
02289: 1960 0F 8F FFFFF4C2 JG   L0014
};
	NsameU4 = -NsameU4;
02291: 1966 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
02292: 196C F7 D8       NEG     EAX
02293: 196E 89 85 FFFFFF34MOV   DWORD PTR FFFFFF34[EBP], EAX
NsameU4 = -NsameU4;

	if(stage&1){
02295: 1974 83 BD FFFFFF2C00 CMP DWORD PTR FFFFFF2C[EBP], 00000000
02296: 197B 74 5E       JE      L0018
if(stage&1){
		LoopN >>= 3;
02298: 197D C1 BD FFFFFF2803 SAR DWORD PTR FFFFFF28[EBP], 00000003
LoopN >>= 3;
		NsameU1 >>= 3;
02300: 1984 C1 BD FFFFFF1C03 SAR DWORD PTR FFFFFF1C[EBP], 00000003
NsameU1 >>= 3;
		NsameU2 >>= 3;
02302: 198B C1 BD FFFFFF0C03 SAR DWORD PTR FFFFFF0C[EBP], 00000003
NsameU2 >>= 3;
		NsameU4 >>= 3;
02304: 1992 C1 BD FFFFFF3403 SAR DWORD PTR FFFFFF34[EBP], 00000003
NsameU4 >>= 3;
		NdiffU <<= 3;
02306: 1999 C1 A5 FFFFFF5803 SHL DWORD PTR FFFFFF58[EBP], 00000003
NdiffU <<= 3;
		Flyinc = Flyinc << 3;
02308: 19A0 C1 A5 FFFFFF3803 SHL DWORD PTR FFFFFF38[EBP], 00000003
Flyinc = Flyinc << 3;
		FlyOffsetA <<= 3;
02310: 19A7 C1 A5 FFFFFEC403 SHL DWORD PTR FFFFFEC4[EBP], 00000003
FlyOffsetA <<= 3;
		FlyOffsetB <<= 3;
02312: 19AE C1 A5 FFFFFEE803 SHL DWORD PTR FFFFFEE8[EBP], 00000003
FlyOffsetB <<= 3;
		FlyOffsetAIm =  FlyOffsetA + 1;
02314: 19B5 8B 85 FFFFFEC4MOV   EAX, DWORD PTR FFFFFEC4[EBP]
02315: 19BB 89 85 FFFFFEDCMOV   DWORD PTR FFFFFEDC[EBP], EAX
02316: 19C1 83 85 FFFFFEDC01 ADD DWORD PTR FFFFFEDC[EBP], 00000001
02317: 19C8             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
		FlyOffsetBIm =  FlyOffsetB + 1;
02319: 19C8 8B 85 FFFFFEE8MOV   EAX, DWORD PTR FFFFFEE8[EBP]
02320: 19CE 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
02321: 19D4 83 85 FFFFFEEC01 ADD DWORD PTR FFFFFEEC[EBP], 00000001
02322: 19DB             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
	}
02324: 19DB     L0018
}
}
02326: 19DB FF 8D FFFFFF40DEC   DWORD PTR FFFFFF40[EBP]
02327: 19E1     L0010
02328: 19E1 83 BD FFFFFF4000 CMP DWORD PTR FFFFFF40[EBP], 00000000
02329: 19E8 0F 8F FFFFF2A0 JG   L0011
}
ioptr += 2*Ntbl[M];
02331: 19EE 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
02332: 19F1 8B 04 85 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
02333: 19F8 C1 E0 03    SHL     EAX, 00000003
02334: 19FB 01 45 08    ADD     DWORD PTR 00000008[EBP], EAX
ioptr += 2*Ntbl[M];
}
02336: 19FE FF 4D 10    DEC     DWORD PTR 00000010[EBP]
02337: 1A01     L0001
02338: 1A01 83 7D 10 00 CMP     DWORD PTR 00000010[EBP], 00000000
02339: 1A05 0F 8F FFFFE675 JG   L0002
}
}
02341: 1A0B     L0000
02342: 1A0B 8D 65 F4    LEA     ESP, DWORD PTR FFFFFFF4[EBP]
02343: 1A0E 5F          POP     EDI
02344: 1A0F 5E          POP     ESI
02345: 1A10 5B          POP     EBX
02346: 1A11 5D          POP     EBP
02347: 1A12 C3          RETN    

Function: ?rffts@@YAXPAMJJ0@Z
}

/* rffts	*/
/* compute multiple real input FFTs on 'Rows' consecutively stored arrays	*/
/* ioptr = pointer to the data in and out	*/
/* M = log2 of fft size	*/
/* Rows = number of FFTs to compute	*/
/* Utbl = Pointer to cosine table	*/

void rffts(float *ioptr, long M, long Rows, float *Utbl){
00002: 0000 55          PUSH    EBP
00003: 0001 89 E5       MOV     EBP, ESP
00004: 0003 53          PUSH    EBX
00005: 0004 56          PUSH    ESI
00006: 0005 57          PUSH    EDI
00007: 0006 81 EC 0000012C SUB  ESP, 0000012C
{
/* Compute in-place real fft on the rows of the input array	*/
/* INPUTS */
/* M = log2 of fft size	*/
/* *ioptr = real input data array	*/
/* *Utbl = cosine table	*/
/* Rows = number of rows in ioptr array (use Rows of 1 if ioptr is a 1 dimensional array)	*/
/* OUTPUTS */
/* *ioptr = output data array	in the following order */
/* Re(x[0]), Re(x[N/2]), Re(x[1]), Im(x[1]), Re(x[2]), Im(x[2]), ... Re(x[N/2-1]), Im(x[N/2-1]). */

long 	Flyinc;
long	FlyOffsetA;
long	FlyOffsetAIm;
long	FlyOffsetB;
long	FlyOffsetBIm;
long 	NsameU1;
long 	NsameU2;
long 	NsameU4;
long 	diffUcnt;
long 	LoopCnt;
float	scale;
float	fly0r;
float	fly0i;
float	fly1r;
float	fly1i;
float	fly2r;
float	fly2i;
float	fly3r;
float	fly3i;
float	fly4r;
float	fly4i;
float	fly5r;
float	fly5i;
float	fly6r;
float	fly6i;
float	fly7r;
float	fly7i;
float	U0r;
float	U0i;
float	U1r;
float	U1i;
float	U2r;
float	U2i;
float	U3r;
float	U3i;
float	t0r;
float	t0i;
float	t1r;
float	t1i;

float	*fly0P;
float	*fly1P;
float	*fly2P;
float	*fly3P;

float	*U0rP;
float	*U0iP;
float	*U1rP;
float	*U1iP;
float	*U2rP;
float	*U2iP;
float	*IOP;
long	U3offset;

long 	stage;
long 	NdiffU;
long 	LoopN;

const long BRshift = MAXMROOT - ((M-1)>>1);		/* for RFFT */
00009: 000C 8B 5D 0C    MOV     EBX, DWORD PTR 0000000C[EBP]
00013: 000F C7 85 FFFFFF6000000009 MOV DWORD PTR FFFFFF60[EBP], 00000009
00010: 0019 83 C3 FF    ADD     EBX, FFFFFFFF
00011: 001C D1 FB       SAR     EBX, 00000001
00012: 001E             NOOP    
00014: 001E 29 9D FFFFFF60SUB   DWORD PTR FFFFFF60[EBP], EBX
00015: 0024             NOOP    
const long BRshift = MAXMROOT - ((M-1)>>1);		/* for RFFT */
const long Nrems2 = Ntbl[(M-1)-((M-1)>>1)+1];		/* for RFFT */
00017: 0024 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00018: 0027 83 C2 00    ADD     EDX, 00000000
00019: 002A 29 DA       SUB     EDX, EBX
00020: 002C 8B 04 95 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EDX*4]
00021: 0033 89 85 FFFFFF68MOV   DWORD PTR FFFFFF68[EBP], EAX
const long Nrems2 = Ntbl[(M-1)-((M-1)>>1)+1];		/* for RFFT */
const long Nroot_1_ColInc = (Ntbl[(M-1)-1]-Ntbl[(M-1)-((M-1)>>1)])*2; /* for RFFT */
00023: 0039 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00026: 003C 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00024: 003F 83 C2 FF    ADD     EDX, FFFFFFFF
00027: 0042 8B 04 8D FFFFFFF8 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF8[ECX*4]
00025: 0049 29 DA       SUB     EDX, EBX
00028: 004B 89 85 FFFFFF64MOV   DWORD PTR FFFFFF64[EBP], EAX
00029: 0051 2B 04 95 00000000 SUB EAX, DWORD PTR ?Ntbl@@3PBJB[EDX*4]
00030: 0058 89 85 FFFFFF64MOV   DWORD PTR FFFFFF64[EBP], EAX
00031: 005E D1 A5 FFFFFF64SHL   DWORD PTR FFFFFF64[EBP], 00000001
00032: 0064             NOOP    
const long Nroot_1_ColInc = (Ntbl[(M-1)-1]-Ntbl[(M-1)-((M-1)>>1)])*2; /* for RFFT */

for (;Rows>0;Rows--){
00034: 0064 E9 00002020 JMP     L0001
00035: 0069     L0002
for (;Rows>0;Rows--){

M=M-1;		/* for RFFT */
00037: 0069 83 45 0C FF ADD     DWORD PTR 0000000C[EBP], FFFFFFFF
M=M-1;		/* for RFFT */

FlyOffsetA = Ntbl[M] * 2/2;
00039: 006D 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00042: 0070 B9 00000002 MOV     ECX, 00000002
00040: 0075 8B 14 85 00000000 MOV EDX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
00041: 007C D1 E2       SHL     EDX, 00000001
00043: 007E 89 D0       MOV     EAX, EDX
00044: 0080 99          CDQ     
00045: 0081 F7 F9       IDIV    ECX
00046: 0083 89 85 FFFFFED8MOV   DWORD PTR FFFFFED8[EBP], EAX
00047: 0089             NOOP    
FlyOffsetA = Ntbl[M] * 2/2;
FlyOffsetAIm = FlyOffsetA + 1;
00049: 0089 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00050: 008F 89 85 FFFFFECCMOV   DWORD PTR FFFFFECC[EBP], EAX
00051: 0095 83 85 FFFFFECC01 ADD DWORD PTR FFFFFECC[EBP], 00000001
00052: 009C             NOOP    
FlyOffsetAIm = FlyOffsetA + 1;
FlyOffsetB = FlyOffsetA + 2;
00054: 009C 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00055: 00A2 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
00056: 00A8 83 85 FFFFFEEC02 ADD DWORD PTR FFFFFEEC[EBP], 00000002
00057: 00AF             NOOP    
FlyOffsetB = FlyOffsetA + 2;
FlyOffsetBIm = FlyOffsetB + 1;
00059: 00AF 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00060: 00B5 89 85 FFFFFEF4MOV   DWORD PTR FFFFFEF4[EBP], EAX
00061: 00BB 83 85 FFFFFEF401 ADD DWORD PTR FFFFFEF4[EBP], 00000001
00062: 00C2             NOOP    
FlyOffsetBIm = FlyOffsetB + 1;

/* BitrevR2 ** bit reverse shuffle and first radix 2 stage ******/

scale = 0.5;
for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
00064: 00C2 C7 85 FFFFFF4000000000 MOV DWORD PTR FFFFFF40[EBP], 00000000
00065: 00CC 8B 75 0C    MOV     ESI, DWORD PTR 0000000C[EBP]
00068: 00CF 8B 85 FFFFFF64MOV   EAX, DWORD PTR FFFFFF64[EBP]
00066: 00D5 D1 FE       SAR     ESI, 00000001
00067: 00D7             NOOP    
00069: 00D7 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
00070: 00DD C1 A5 FFFFFEFC02 SHL DWORD PTR FFFFFEFC[EBP], 00000002
00071: 00E4             NOOP    
00072: 00E4 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00074: 00E7 8B 7D 0C    MOV     EDI, DWORD PTR 0000000C[EBP]
00073: 00EA D1 FA       SAR     EDX, 00000001
00075: 00EC 29 D7       SUB     EDI, EDX
00076: 00EE             NOOP    
00077: 00EE E9 00000518 JMP     L0003
00078: 00F3     L0004
for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
	for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
00080: 00F3 8B 04 B5 FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ESI*4]
00099: 00FA B9 00000002 MOV     ECX, 00000002
00081: 00FF 89 85 FFFFFF38MOV   DWORD PTR FFFFFF38[EBP], EAX
00082: 0105 83 85 FFFFFF38FF ADD DWORD PTR FFFFFF38[EBP], FFFFFFFF
00083: 010C             NOOP    
00084: 010C 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00085: 010F 89 85 FFFFFED4MOV   DWORD PTR FFFFFED4[EBP], EAX
00086: 0115 D1 BD FFFFFED4SAR   DWORD PTR FFFFFED4[EBP], 00000001
00087: 011B             NOOP    
00088: 011B 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00089: 011E 89 85 FFFFFEF0MOV   DWORD PTR FFFFFEF0[EBP], EAX
00090: 0124 03 85 FFFFFEFCADD   EAX, DWORD PTR FFFFFEFC[EBP]
00091: 012A 89 85 FFFFFEF0MOV   DWORD PTR FFFFFEF0[EBP], EAX
00092: 0130             NOOP    
00093: 0130 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
00094: 0136 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
00095: 013C C1 A5 FFFFFEE802 SHL DWORD PTR FFFFFEE8[EBP], 00000002
00096: 0143             NOOP    
00097: 0143 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00098: 0146 83 C2 01    ADD     EDX, 00000001
00100: 0149 89 D0       MOV     EAX, EDX
00101: 014B 99          CDQ     
00102: 014C F7 F9       IDIV    ECX
00103: 014E 89 85 FFFFFEF8MOV   DWORD PTR FFFFFEF8[EBP], EAX
00104: 0154             NOOP    
00105: 0154 E9 00000496 JMP     L0005
00106: 0159     L0006
for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
		LoopCnt = (Ntbl[(M>>1)-1]-1);
00108: 0159 8B 8D FFFFFED4MOV   ECX, DWORD PTR FFFFFED4[EBP]
00109: 015F 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
00110: 0166 89 85 FFFFFF00MOV   DWORD PTR FFFFFF00[EBP], EAX
00111: 016C 83 85 FFFFFF00FF ADD DWORD PTR FFFFFF00[EBP], FFFFFFFF
00112: 0173             NOOP    
LoopCnt = (Ntbl[(M>>1)-1]-1);
		fly0P = ioptr + Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
00114: 0173 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
00117: 0179 8B 8D FFFFFF60MOV   ECX, DWORD PTR FFFFFF60[EBP]
00115: 017F 8A 98 00000000 MOV  BL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00125: 0185 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
00116: 018B 81 E3 000000FF AND  EBX, 000000FF
00118: 0191 D3 FB       SAR     EBX, ECX
00119: 0193 C1 E3 04    SHL     EBX, 00000004
00124: 0196 8B 8D FFFFFEF8MOV   ECX, DWORD PTR FFFFFEF8[EBP]
00120: 019C 03 9D FFFFFEF0ADD   EBX, DWORD PTR FFFFFEF0[EBP]
00121: 01A2 03 9D FFFFFEE8ADD   EBX, DWORD PTR FFFFFEE8[EBP]
00122: 01A8             NOOP    
fly0P = ioptr + Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
		IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
00126: 01A8 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
00127: 01AE D3 A5 FFFFFF30SHL   DWORD PTR FFFFFF30[EBP], ECX
00128: 01B4 C1 A5 FFFFFF3003 SHL DWORD PTR FFFFFF30[EBP], 00000003
00129: 01BB 8B 85 FFFFFF30MOV   EAX, DWORD PTR FFFFFF30[EBP]
00130: 01C1 03 45 08    ADD     EAX, DWORD PTR 00000008[EBP]
00131: 01C4 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
00132: 01CA 03 85 FFFFFEE8ADD   EAX, DWORD PTR FFFFFEE8[EBP]
00133: 01D0 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
00134: 01D6             NOOP    
IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
		fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
00136: 01D6 8B 85 FFFFFF00MOV   EAX, DWORD PTR FFFFFF00[EBP]
00139: 01DC 8B 8D FFFFFF60MOV   ECX, DWORD PTR FFFFFF60[EBP]
00137: 01E2 8A 90 00000000 MOV  DL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00145: 01E8 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00138: 01EA 81 E2 000000FF AND  EDX, 000000FF
00140: 01F0 D3 FA       SAR     EDX, ECX
00141: 01F2 C1 E2 04    SHL     EDX, 00000004
00142: 01F5 03 95 FFFFFF30ADD   EDX, DWORD PTR FFFFFF30[EBP]
00143: 01FB             NOOP    
fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
		fly0r = *fly0P;
00146: 01FB 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
fly0r = *fly0P;
		fly0i = *(fly0P+1);
00148: 0201 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00149: 0204 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(fly0P+1);
		fly1r = *(fly0P+FlyOffsetA);
00151: 020A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00152: 0210 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00153: 0213 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
		fly1i = *(fly0P+FlyOffsetAIm);
00155: 0219 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00156: 021F 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00157: 0222 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
00158: 0228 8B 85 FFFFFF68MOV   EAX, DWORD PTR FFFFFF68[EBP]
00159: 022E 89 85 FFFFFED0MOV   DWORD PTR FFFFFED0[EBP], EAX
00160: 0234 C1 A5 FFFFFED002 SHL DWORD PTR FFFFFED0[EBP], 00000002
00161: 023B E9 00000287 JMP     L001B
00162: 0240     L0008
fly1i = *(fly0P+FlyOffsetAIm);
		for (; LoopCnt > LoopN;){
			fly2r = *(fly0P+2);
00164: 0240 8B 43 08    MOV     EAX, DWORD PTR 00000008[EBX]
00165: 0243 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly0P+2);
			fly2i = *(fly0P+(2+1));
00167: 0249 8B 43 0C    MOV     EAX, DWORD PTR 0000000C[EBX]
00168: 024C 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly0P+(2+1));
			fly3r = *(fly0P+FlyOffsetB);
00170: 024F 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00171: 0255 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00172: 0258 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
			fly3i = *(fly0P+FlyOffsetBIm);
00174: 025B 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
00175: 0261 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00176: 0264 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);
			fly4r = *fly1P;
00178: 0267 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00179: 0269 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly4r = *fly1P;
			fly4i = *(fly1P+1);
00181: 026C 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00182: 026F 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly4i = *(fly1P+1);
			fly5r = *(fly1P+FlyOffsetA);
00184: 0272 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00185: 0278 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00186: 027B 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly5r = *(fly1P+FlyOffsetA);
			fly5i = *(fly1P+FlyOffsetAIm);
00188: 027E 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00189: 0284 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00190: 0287 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly5i = *(fly1P+FlyOffsetAIm);
			fly6r = *(fly1P+2);
00192: 028A 8B 42 08    MOV     EAX, DWORD PTR 00000008[EDX]
00193: 028D 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly6r = *(fly1P+2);
			fly6i = *(fly1P+(2+1));
00195: 0290 8B 42 0C    MOV     EAX, DWORD PTR 0000000C[EDX]
00196: 0293 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly6i = *(fly1P+(2+1));
			fly7r = *(fly1P+FlyOffsetB);
00198: 0296 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00199: 029C 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00200: 029F 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly7r = *(fly1P+FlyOffsetB);
			fly7i = *(fly1P+FlyOffsetBIm);
00202: 02A2 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
00203: 02A8 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00204: 02AB 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly7i = *(fly1P+FlyOffsetBIm);
			
			t0r	= fly0r + fly1r;
00206: 02AE D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00207: 02B4 D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
00208: 02BA D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r	= fly0r + fly1r;
			t0i	= fly0i + fly1i;
00210: 02BD D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00211: 02C3 D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
00212: 02C9 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i	= fly0i + fly1i;
			fly1r = fly0r - fly1r;
00214: 02CC D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00215: 02D2 D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
00216: 02D8 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly0r - fly1r;
			fly1i = fly0i - fly1i;
00218: 02DE D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00219: 02E4 D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
00220: 02EA D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly0i - fly1i;
			t1r = fly2r + fly3r;
00222: 02F0 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00223: 02F3 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00224: 02F9 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = fly2r + fly3r;
			t1i = fly2i + fly3i;
00226: 02FC D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00227: 02FF D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00228: 0302 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = fly2i + fly3i;
			fly3r = fly2r - fly3r;
00230: 0305 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00231: 0308 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00232: 030E D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly2r - fly3r;
			fly3i = fly2i - fly3i;
00234: 0311 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00235: 0314 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00236: 0317 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly2i - fly3i;
			fly0r = fly4r + fly5r;
00238: 031A D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00239: 031D D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00240: 0320 D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly4r + fly5r;
			fly0i = fly4i + fly5i;
00242: 0326 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00243: 0329 D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00244: 032C D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly4i + fly5i;
			fly5r = fly4r - fly5r;
00246: 0332 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00247: 0335 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00248: 0338 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly4r - fly5r;
			fly5i = fly4i - fly5i;
00250: 033B D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00251: 033E D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00252: 0341 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly4i - fly5i;
			fly2r = fly6r + fly7r;
00254: 0344 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00255: 0347 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
00256: 034A D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly6r + fly7r;
			fly2i = fly6i + fly7i;
00258: 0350 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00259: 0353 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
00260: 0356 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly6i + fly7i;
			fly7r = fly6r - fly7r;
00262: 0359 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00263: 035C D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
00264: 035F D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = fly6r - fly7r;
			fly7i = fly6i - fly7i;
00266: 0362 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00267: 0365 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
00268: 0368 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = fly6i - fly7i;

			*fly1P = scale*t0r;
00270: 036B D9 45 CC    FLD     DWORD PTR FFFFFFCC[EBP]
00271: 036E D8 0D 00000000 FMUL DWORD PTR .data+00000388
00272: 0374 D9 1A       FSTP    DWORD PTR 00000000[EDX]
*fly1P = scale*t0r;
			*(fly1P+1) = scale*t0i;
00274: 0376 D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
00275: 0379 D8 0D 00000000 FMUL DWORD PTR .data+0000038c
00276: 037F D9 5A 04    FSTP    DWORD PTR 00000004[EDX]
*(fly1P+1) = scale*t0i;
			*(fly1P+2) = scale*fly1r;
00278: 0382 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00279: 0388 D8 0D 00000000 FMUL DWORD PTR .data+00000390
00280: 038E D9 5A 08    FSTP    DWORD PTR 00000008[EDX]
*(fly1P+2) = scale*fly1r;
			*(fly1P+(2+1)) = scale*fly1i;
00282: 0391 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00283: 0397 D8 0D 00000000 FMUL DWORD PTR .data+00000394
00284: 039D D9 5A 0C    FSTP    DWORD PTR 0000000C[EDX]
*(fly1P+(2+1)) = scale*fly1i;
			*(fly1P+FlyOffsetA) = scale*t1r;
00286: 03A0 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
00287: 03A3 D8 0D 00000000 FMUL DWORD PTR .data+00000398
00288: 03A9 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00289: 03AF D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetA) = scale*t1r;
			*(fly1P+FlyOffsetAIm) = scale*t1i;
00291: 03B2 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
00292: 03B5 D8 0D 00000000 FMUL DWORD PTR .data+0000039c
00293: 03BB 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00294: 03C1 D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetAIm) = scale*t1i;
			*(fly1P+FlyOffsetB) = scale*fly3r;
00296: 03C4 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00297: 03C7 D8 0D 00000000 FMUL DWORD PTR .data+000003a0
00298: 03CD 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00299: 03D3 D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetB) = scale*fly3r;
			*(fly1P+FlyOffsetBIm) = scale*fly3i;
00301: 03D6 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00302: 03D9 D8 0D 00000000 FMUL DWORD PTR .data+000003a4
00303: 03DF 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
00304: 03E5 D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetBIm) = scale*fly3i;
			*fly0P = scale*fly0r;
00306: 03E8 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
00307: 03EE D8 0D 00000000 FMUL DWORD PTR .data+000003a8
00308: 03F4 D9 1B       FSTP    DWORD PTR 00000000[EBX]
*fly0P = scale*fly0r;
			*(fly0P+1) = scale*fly0i;
00310: 03F6 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
00311: 03FC D8 0D 00000000 FMUL DWORD PTR .data+000003ac
00312: 0402 D9 5B 04    FSTP    DWORD PTR 00000004[EBX]
*(fly0P+1) = scale*fly0i;
			*(fly0P+2) = scale*fly5r;
00314: 0405 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
00315: 0408 D8 0D 00000000 FMUL DWORD PTR .data+000003b0
00316: 040E D9 5B 08    FSTP    DWORD PTR 00000008[EBX]
*(fly0P+2) = scale*fly5r;
			*(fly0P+(2+1)) = scale*fly5i;
00318: 0411 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
00319: 0414 D8 0D 00000000 FMUL DWORD PTR .data+000003b4
00320: 041A D9 5B 0C    FSTP    DWORD PTR 0000000C[EBX]
*(fly0P+(2+1)) = scale*fly5i;
			*(fly0P+FlyOffsetA) = scale*fly2r;
00322: 041D D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00323: 0423 D8 0D 00000000 FMUL DWORD PTR .data+000003b8
00324: 0429 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00325: 042F D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetA) = scale*fly2r;
			*(fly0P+FlyOffsetAIm) = scale*fly2i;
00327: 0432 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00328: 0435 D8 0D 00000000 FMUL DWORD PTR .data+000003bc
00329: 043B 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00330: 0441 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetAIm) = scale*fly2i;
			*(fly0P+FlyOffsetB) = scale*fly7r;
00332: 0444 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00333: 0447 D8 0D 00000000 FMUL DWORD PTR .data+000003c0
00334: 044D 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00335: 0453 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetB) = scale*fly7r;
			*(fly0P+FlyOffsetBIm) = scale*fly7i;
00337: 0456 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00338: 0459 D8 0D 00000000 FMUL DWORD PTR .data+000003c4
00339: 045F 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
00340: 0465 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetBIm) = scale*fly7i;

			fly0P -= Nrems2;
00342: 0468 2B 9D FFFFFED0SUB   EBX, DWORD PTR FFFFFED0[EBP]
fly0P -= Nrems2;
			fly0r = *fly0P;
00344: 046E 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00345: 0470 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
fly0r = *fly0P;
			fly0i = *(fly0P+1);
00347: 0476 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00348: 0479 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(fly0P+1);
			fly1r = *(fly0P+FlyOffsetA);
00350: 047F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00351: 0485 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00352: 0488 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
			fly1i = *(fly0P+FlyOffsetAIm);
00354: 048E 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00355: 0494 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00356: 0497 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly1i = *(fly0P+FlyOffsetAIm);
			LoopCnt -= 1;
00358: 049D 83 AD FFFFFF0001 SUB DWORD PTR FFFFFF00[EBP], 00000001
LoopCnt -= 1;
			fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
00360: 04A4 8B 85 FFFFFF00MOV   EAX, DWORD PTR FFFFFF00[EBP]
00363: 04AA 8B 8D FFFFFF60MOV   ECX, DWORD PTR FFFFFF60[EBP]
00361: 04B0 8A 90 00000000 MOV  DL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00362: 04B6 81 E2 000000FF AND  EDX, 000000FF
00364: 04BC D3 FA       SAR     EDX, ECX
00365: 04BE C1 E2 04    SHL     EDX, 00000004
00366: 04C1 03 95 FFFFFF30ADD   EDX, DWORD PTR FFFFFF30[EBP]
00367: 04C7     L001B
00368: 04C7             NOOP    
fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
		};
00370: 04C7     L0007
00371: 04C7 8B 85 FFFFFF00MOV   EAX, DWORD PTR FFFFFF00[EBP]
00372: 04CD 3B 85 FFFFFF38CMP   EAX, DWORD PTR FFFFFF38[EBP]
00373: 04D3 0F 8F FFFFFD67 JG   L0008
};
		fly2r = *(fly0P+2);
00375: 04D9 8B 43 08    MOV     EAX, DWORD PTR 00000008[EBX]
00376: 04DC 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly0P+2);
		fly2i = *(fly0P+(2+1));
00378: 04E2 8B 43 0C    MOV     EAX, DWORD PTR 0000000C[EBX]
00379: 04E5 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly0P+(2+1));
		fly3r = *(fly0P+FlyOffsetB);
00381: 04E8 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00382: 04EE 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00383: 04F1 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
		fly3i = *(fly0P+FlyOffsetBIm);
00385: 04F4 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
00386: 04FA 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00387: 04FD 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);

		t0r   = fly0r + fly1r;
00389: 0500 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00390: 0506 D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
00391: 050C D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r   = fly0r + fly1r;
		t0i   = fly0i + fly1i;
00393: 050F D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00394: 0515 D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
00395: 051B D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i   = fly0i + fly1i;
		fly1r = fly0r - fly1r;
00397: 051E D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00398: 0524 D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
00399: 052A D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly0r - fly1r;
		fly1i = fly0i - fly1i;
00401: 0530 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00402: 0536 D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
00403: 053C D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly0i - fly1i;
		t1r   = fly2r + fly3r;
00405: 0542 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00406: 0545 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00407: 054B D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r   = fly2r + fly3r;
		t1i   = fly2i + fly3i;
00409: 054E D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00410: 0551 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00411: 0554 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i   = fly2i + fly3i;
		fly3r = fly2r - fly3r;
00413: 0557 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00414: 055A D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00415: 0560 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly2r - fly3r;
		fly3i = fly2i - fly3i;
00417: 0563 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00418: 0566 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
00419: 0569 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly2i - fly3i;

		*fly0P = scale*t0r;
00421: 056C D9 45 CC    FLD     DWORD PTR FFFFFFCC[EBP]
00422: 056F D8 0D 00000000 FMUL DWORD PTR .data+000003c8
00423: 0575 D9 1B       FSTP    DWORD PTR 00000000[EBX]
*fly0P = scale*t0r;
		*(fly0P+1) = scale*t0i;
00425: 0577 D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
00426: 057A D8 0D 00000000 FMUL DWORD PTR .data+000003cc
00427: 0580 D9 5B 04    FSTP    DWORD PTR 00000004[EBX]
*(fly0P+1) = scale*t0i;
		*(fly0P+2) = scale*fly1r;
00429: 0583 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00430: 0589 D8 0D 00000000 FMUL DWORD PTR .data+000003d0
00431: 058F D9 5B 08    FSTP    DWORD PTR 00000008[EBX]
*(fly0P+2) = scale*fly1r;
		*(fly0P+(2+1)) = scale*fly1i;
00433: 0592 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00434: 0598 D8 0D 00000000 FMUL DWORD PTR .data+000003d4
00435: 059E D9 5B 0C    FSTP    DWORD PTR 0000000C[EBX]
*(fly0P+(2+1)) = scale*fly1i;
		*(fly0P+FlyOffsetA) = scale*t1r;
00437: 05A1 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
00438: 05A4 D8 0D 00000000 FMUL DWORD PTR .data+000003d8
00439: 05AA 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00440: 05B0 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetA) = scale*t1r;
		*(fly0P+FlyOffsetAIm) = scale*t1i;
00442: 05B3 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
00443: 05B6 D8 0D 00000000 FMUL DWORD PTR .data+000003dc
00444: 05BC 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00445: 05C2 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetAIm) = scale*t1i;
		*(fly0P+FlyOffsetB) = scale*fly3r;
00447: 05C5 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00448: 05C8 D8 0D 00000000 FMUL DWORD PTR .data+000003e0
00449: 05CE 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00450: 05D4 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetB) = scale*fly3r;
		*(fly0P+FlyOffsetBIm) = scale*fly3i;
00452: 05D7 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00453: 05DA D8 0D 00000000 FMUL DWORD PTR .data+000003e4
00454: 05E0 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
00455: 05E6 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetBIm) = scale*fly3i;

	};
00457: 05E9 FF 8D FFFFFF38DEC   DWORD PTR FFFFFF38[EBP]
00458: 05EF     L0005
00459: 05EF 83 BD FFFFFF3800 CMP DWORD PTR FFFFFF38[EBP], 00000000
00460: 05F6 0F 8D FFFFFB5D JGE  L0006
};
};
00462: 05FC 8B 04 B5 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ESI*4]
00463: 0603 D1 E0       SHL     EAX, 00000001
00464: 0605 01 85 FFFFFF40ADD   DWORD PTR FFFFFF40[EBP], EAX
00465: 060B     L0003
00466: 060B 8B 04 BD 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EDI*4]
00467: 0612 D1 E0       SHL     EAX, 00000001
00468: 0614 39 85 FFFFFF40CMP   DWORD PTR FFFFFF40[EBP], EAX
00469: 061A 0F 8C FFFFFAD3 JL   L0004
};



/**** FFTC  **************/

scale = 2.0;

NdiffU = 2;
00471: 0620 C7 85 FFFFFF5C00000002 MOV DWORD PTR FFFFFF5C[EBP], 00000002
NdiffU = 2;
Flyinc =  (NdiffU);
00473: 062A C7 85 FFFFFF4400000002 MOV DWORD PTR FFFFFF44[EBP], 00000002
Flyinc =  (NdiffU);

NsameU4 = Ntbl[M+1]/4;	/* for RFFT */
00475: 0634 BB 00000004 MOV     EBX, 00000004
00476: 0639 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00477: 063C 8B 04 8D 00000004 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+00000004[ECX*4]
00478: 0643 99          CDQ     
00479: 0644 F7 FB       IDIV    EBX
00480: 0646 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
00481: 064C             NOOP    
NsameU4 = Ntbl[M+1]/4;	/* for RFFT */
LoopN = Ntbl[M-3];
00483: 064C 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00484: 064F 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
00485: 0656 89 85 FFFFFF38MOV   DWORD PTR FFFFFF38[EBP], EAX
LoopN = Ntbl[M-3];

stage = ((M-1)/3);
00487: 065C             NOOP    
00488: 065C 8D 51 FF    LEA     EDX, DWORD PTR FFFFFFFF[ECX]
00489: 065F B9 00000003 MOV     ECX, 00000003
00490: 0664 89 D0       MOV     EAX, EDX
00491: 0666 99          CDQ     
00492: 0667 F7 F9       IDIV    ECX
00493: 0669 89 85 FFFFFF40MOV   DWORD PTR FFFFFF40[EBP], EAX
00494: 066F             NOOP    
stage = ((M-1)/3);
if ( (M-1-(stage * 3)) != 0 ){
00496: 066F 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
00498: 0675 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00497: 0678 6B C0 03    IMUL    EAX, 00000003
00499: 067B 83 C2 FF    ADD     EDX, FFFFFFFF
00500: 067E 29 C2       SUB     EDX, EAX
00501: 0680             NOOP    
00502: 0680 09 D2       OR      EDX, EDX
00503: 0682 0F 84 00000655 JE   L0009
if ( (M-1-(stage * 3)) != 0 ){
	FlyOffsetA =  Flyinc << 2;
00505: 0688 C7 85 FFFFFED800000008 MOV DWORD PTR FFFFFED8[EBP], 00000008
FlyOffsetA =  Flyinc << 2;
	FlyOffsetB =  FlyOffsetA << 1;
00507: 0692 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00508: 0698 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
00509: 069E D1 A5 FFFFFEECSHL   DWORD PTR FFFFFEEC[EBP], 00000001
00510: 06A4             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
	FlyOffsetAIm =  FlyOffsetA + 1;
00512: 06A4 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00513: 06AA 89 85 FFFFFECCMOV   DWORD PTR FFFFFECC[EBP], EAX
00514: 06B0 83 85 FFFFFECC01 ADD DWORD PTR FFFFFECC[EBP], 00000001
00515: 06B7             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
	FlyOffsetBIm =  FlyOffsetB + 1;
	if ( (M-1-(stage * 3)) == 1 ){
00517: 06B7 83 FA 01    CMP     EDX, 00000001
00518: 06BA 0F 85 0000027B JNE  L000A
if ( (M-1-(stage * 3)) == 1 ){
		/* 1 radix 2 stage */

		IOP = ioptr;
00520: 06C0 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00525: 06C3 BF 00000008 MOV     EDI, 00000008
00521: 06C8 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
IOP = ioptr;
		fly0P = IOP;
00523: 06CE 89 C3       MOV     EBX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
00538: 06D0 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
00526: 06D6 89 DA       MOV     EDX, EBX
00539: 06D8 89 85 FFFFFF00MOV   DWORD PTR FFFFFF00[EBP], EAX
00527: 06DE 01 FA       ADD     EDX, EDI
00528: 06E0             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
00530: 06E0 89 D1       MOV     ECX, EDX
00540: 06E2 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00531: 06E8 01 F9       ADD     ECX, EDI
00532: 06EA             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
00534: 06EA 89 CE       MOV     ESI, ECX
00541: 06EC 89 85 FFFFFEDCMOV   DWORD PTR FFFFFEDC[EBP], EAX
00535: 06F2 01 FE       ADD     ESI, EDI
00536: 06F4             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0
			t1	-	-	t1
			f2	-  1-	f5
			f1	- -i-	f7
			f4	-	-	f4
			f0	-	-	f0
			f6	-  1-	f2
			f3	- -i-	f1
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
00542: 06F4 C1 A5 FFFFFEDC02 SHL DWORD PTR FFFFFEDC[EBP], 00000002
00543: 06FB             NOOP    
00544: 06FB E9 00000211 JMP     L000B
00545: 0700     L000C
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
00547: 0700 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00548: 0702 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
00550: 0705 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00551: 0708 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
00553: 070B 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00554: 070D 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
00556: 0710 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00557: 0713 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
00559: 0716 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
00560: 0718 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
00562: 071E 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
00563: 0721 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
00565: 0724 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
00566: 0726 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
00568: 072C 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
00569: 072F 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
00571: 0735 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00572: 073B 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00573: 073E 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
00575: 0741 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00576: 0747 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00577: 074A 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
00579: 074D 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00580: 0753 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00581: 0756 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
00583: 075C 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00584: 0762 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00585: 0765 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
00587: 076B 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00588: 0771 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00589: 0774 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
00591: 0777 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00592: 077D 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00593: 0780 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
00595: 0783 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00596: 0789 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00597: 078C 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
00599: 078F 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00600: 0795 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00601: 0798 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
		
			fly5r = t0r - fly2r;
00603: 079B D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00604: 07A1 D8 6D CC    FSUBR   DWORD PTR FFFFFFCC[EBP]
00605: 07A4 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
00607: 07A7 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00608: 07AA D8 6D D0    FSUBR   DWORD PTR FFFFFFD0[EBP]
00609: 07AD D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
00611: 07B0 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00612: 07B6 D8 45 CC    FADD    DWORD PTR FFFFFFCC[EBP]
00613: 07B9 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
00615: 07BC D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00616: 07BF D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
00617: 07C2 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = t0i + fly2i;

			fly7r = t1r - fly1i;
00619: 07C5 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00620: 07CB D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
00621: 07CE D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = t1r - fly1i;
			fly7i = t1i + fly1r;
00623: 07D1 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00624: 07D7 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
00625: 07DA D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = t1i + fly1r;
			t1r = t1r + fly1i;
00627: 07DD D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00628: 07E3 D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
00629: 07E6 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = t1r + fly1i;
			t1i = t1i - fly1r;
00631: 07E9 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00632: 07EF D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
00633: 07F2 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = t1i - fly1r;

			fly2r = fly4r - fly6r;
00635: 07F5 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00636: 07F8 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00637: 07FB D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
00639: 0801 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00640: 0804 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00641: 0807 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
00643: 080A D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00644: 080D D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00645: 0810 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
00647: 0813 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00648: 0816 D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00649: 0819 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = fly4i + fly6i;

			fly1r = fly0r - fly3i;
00651: 081C D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00652: 081F D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
00653: 0825 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly0r - fly3i;
			fly1i = fly0i + fly3r;
00655: 082B D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00656: 082E D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
00657: 0834 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly0i + fly3r;
			fly0r = fly0r + fly3i;
00659: 083A D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00660: 083D D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
00661: 0843 D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly0r + fly3i;
			fly0i = fly0i - fly3r;
00663: 0849 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00664: 084C D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
00665: 0852 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly0i - fly3r;

			*(fly2P) = fly5r;
00667: 0858 8B 45 94    MOV     EAX, DWORD PTR FFFFFF94[EBP]
00668: 085B 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
00670: 085D 8B 45 98    MOV     EAX, DWORD PTR FFFFFF98[EBP]
00671: 0860 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly0P) = t0r;
00673: 0863 8B 45 CC    MOV     EAX, DWORD PTR FFFFFFCC[EBP]
00674: 0866 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
00676: 0868 8B 45 D0    MOV     EAX, DWORD PTR FFFFFFD0[EBP]
00677: 086B 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;
			*(fly3P) = fly7r;
00679: 086E 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
00680: 0871 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
00682: 0873 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
00683: 0876 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
			*(fly1P) = t1r;
00685: 0879 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
00686: 087C 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
00688: 087E 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
00689: 0881 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;
			*(fly2P + FlyOffsetA) = fly2r;
00691: 0884 8B BD FFFFFF7CMOV   EDI, DWORD PTR FFFFFF7C[EBP]
00692: 088A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00693: 0890 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
00695: 0893 8B 7D 80    MOV     EDI, DWORD PTR FFFFFF80[EBP]
00696: 0896 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00697: 089C 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;
			*(fly0P + FlyOffsetA) = fly4r;
00699: 089F 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
00700: 08A2 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00701: 08A8 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly4r;
			*(fly0P + FlyOffsetAIm) = fly4i;
00703: 08AB 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
00704: 08AE 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00705: 08B4 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly4i;
			*(fly3P + FlyOffsetA) = fly1r;
00707: 08B7 8B BD FFFFFF74MOV   EDI, DWORD PTR FFFFFF74[EBP]
00708: 08BD 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00709: 08C3 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly1r;
			*(fly3P + FlyOffsetAIm) = fly1i;
00711: 08C6 8B BD FFFFFF78MOV   EDI, DWORD PTR FFFFFF78[EBP]
00712: 08CC 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00713: 08D2 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly1i;
			*(fly1P + FlyOffsetA) = fly0r;
00715: 08D5 8B BD FFFFFF6CMOV   EDI, DWORD PTR FFFFFF6C[EBP]
00716: 08DB 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00717: 08E1 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly0r;
			*(fly1P + FlyOffsetAIm) = fly0i;
00719: 08E4 8B BD FFFFFF70MOV   EDI, DWORD PTR FFFFFF70[EBP]
00720: 08EA 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00721: 08F0 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly0i;

			fly0P = (fly0P + FlyOffsetB);
00723: 08F3 03 9D FFFFFEDCADD   EBX, DWORD PTR FFFFFEDC[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
00725: 08F9 03 95 FFFFFEDCADD   EDX, DWORD PTR FFFFFEDC[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
00727: 08FF 03 8D FFFFFEDCADD   ECX, DWORD PTR FFFFFEDC[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
00729: 0905 03 B5 FFFFFEDCADD   ESI, DWORD PTR FFFFFEDC[EBP]
fly3P = (fly3P + FlyOffsetB);
		};
00731: 090B FF 8D FFFFFF00DEC   DWORD PTR FFFFFF00[EBP]
00732: 0911     L000B
00733: 0911 83 BD FFFFFF0000 CMP DWORD PTR FFFFFF00[EBP], 00000000
00734: 0918 0F 8F FFFFFDE2 JG   L000C
};

		NsameU4 >>= 1;
00736: 091E D1 BD FFFFFF3CSAR   DWORD PTR FFFFFF3C[EBP], 00000001
NsameU4 >>= 1;
		LoopN >>= 1;
00738: 0924 D1 BD FFFFFF38SAR   DWORD PTR FFFFFF38[EBP], 00000001
LoopN >>= 1;
		NdiffU <<= 1;
00740: 092A D1 A5 FFFFFF5CSHL   DWORD PTR FFFFFF5C[EBP], 00000001
NdiffU <<= 1;
		Flyinc = Flyinc << 1;
00742: 0930 D1 A5 FFFFFF44SHL   DWORD PTR FFFFFF44[EBP], 00000001
Flyinc = Flyinc << 1;
	}
00744: 0936 E9 000003A2 JMP     L000D
00745: 093B     L000A
}
	else{
		/* 1 radix 4 stage */
		IOP = ioptr;
00747: 093B 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00756: 093E BF 00000008 MOV     EDI, 00000008
00748: 0943 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
IOP = ioptr;

		U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
00750: 0949 C7 45 C4 3F3504F3 MOV DWORD PTR FFFFFFC4[EBP], 3F3504F3
U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
		U3i = U3r;	
00752: 0950 C7 45 C8 3F3504F3 MOV DWORD PTR FFFFFFC8[EBP], 3F3504F3
U3i = U3r;	
		fly0P = IOP;
00754: 0957 89 C3       MOV     EBX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
00769: 0959 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
00757: 095F 89 DA       MOV     EDX, EBX
00770: 0961 89 85 FFFFFF00MOV   DWORD PTR FFFFFF00[EBP], EAX
00758: 0967 01 FA       ADD     EDX, EDI
00759: 0969             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
00761: 0969 89 D1       MOV     ECX, EDX
00771: 096B 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00762: 0971 01 F9       ADD     ECX, EDI
00763: 0973             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
00765: 0973 89 CE       MOV     ESI, ECX
00772: 0975 89 85 FFFFFEE0MOV   DWORD PTR FFFFFEE0[EBP], EAX
00766: 097B 01 FE       ADD     ESI, EDI
00767: 097D             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0	-	-	t0
			t1	-	-	t1	-	-	t1
			f2	-  1-	f5	-	-	f5
			f1	- -i-	f7	-	-	f7
			f4	-	-	f4	-  1-	f6
			f0	-	-	f0	-U3	-	f3
			f6	-  1-	f2	- -i-	f4
			f3	- -i-	f1	-U3a-	f2
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
00773: 097D C1 A5 FFFFFEE002 SHL DWORD PTR FFFFFEE0[EBP], 00000002
00774: 0984             NOOP    
00775: 0984 E9 0000032B JMP     L000E
00776: 0989     L000F
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
00778: 0989 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00779: 098B 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
00781: 098E 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00782: 0991 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
00784: 0994 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00785: 0996 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
00787: 0999 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00788: 099C 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
00790: 099F 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
00791: 09A1 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
00793: 09A7 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
00794: 09AA 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
00796: 09AD 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
00797: 09AF 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
00799: 09B5 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
00800: 09B8 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
00802: 09BE 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00803: 09C4 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00804: 09C7 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
00806: 09CA 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00807: 09D0 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00808: 09D3 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
00810: 09D6 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00811: 09DC 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00812: 09DF 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
00814: 09E5 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00815: 09EB 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00816: 09EE 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
00818: 09F4 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00819: 09FA 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00820: 09FD 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
00822: 0A00 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00823: 0A06 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00824: 0A09 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
00826: 0A0C 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00827: 0A12 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00828: 0A15 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
00830: 0A18 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00831: 0A1E 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00832: 0A21 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
	
			fly5r = t0r - fly2r;
00834: 0A24 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00835: 0A2A D8 6D CC    FSUBR   DWORD PTR FFFFFFCC[EBP]
00836: 0A2D D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
00838: 0A30 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00839: 0A33 D8 6D D0    FSUBR   DWORD PTR FFFFFFD0[EBP]
00840: 0A36 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
00842: 0A39 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00843: 0A3F D8 45 CC    FADD    DWORD PTR FFFFFFCC[EBP]
00844: 0A42 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
00846: 0A45 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00847: 0A48 D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
00848: 0A4B D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = t0i + fly2i;
	
			fly7r = t1r - fly1i;
00850: 0A4E D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00851: 0A54 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
00852: 0A57 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = t1r - fly1i;
			fly7i = t1i + fly1r;
00854: 0A5A D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00855: 0A60 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
00856: 0A63 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = t1i + fly1r;
			t1r = t1r + fly1i;
00858: 0A66 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00859: 0A6C D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
00860: 0A6F D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = t1r + fly1i;
			t1i = t1i - fly1r;
00862: 0A72 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00863: 0A78 D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
00864: 0A7B D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = t1i - fly1r;
	
			fly2r = fly4r - fly6r;
00866: 0A7E D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00867: 0A81 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00868: 0A84 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
00870: 0A8A D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00871: 0A8D D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00872: 0A90 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
00874: 0A93 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00875: 0A96 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
00876: 0A99 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
00878: 0A9C D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00879: 0A9F D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00880: 0AA2 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = fly4i + fly6i;
	
			fly1r = fly0r - fly3i;
00882: 0AA5 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00883: 0AA8 D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
00884: 0AAE D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly0r - fly3i;
			fly1i = fly0i + fly3r;
00886: 0AB4 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00887: 0AB7 D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
00888: 0ABD D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly0i + fly3r;
			fly0r = fly0r + fly3i;
00890: 0AC3 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00891: 0AC6 D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
00892: 0ACC D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly0r + fly3i;
			fly0i = fly0i - fly3r;
00894: 0AD2 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00895: 0AD5 D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
00896: 0ADB D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly0i - fly3r;
	
			fly6r = t0r - fly4r;
00898: 0AE1 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00899: 0AE4 D8 6D CC    FSUBR   DWORD PTR FFFFFFCC[EBP]
00900: 0AE7 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly6r = t0r - fly4r;
			fly6i = t0i - fly4i;
00902: 0AEA D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00903: 0AED D8 6D D0    FSUBR   DWORD PTR FFFFFFD0[EBP]
00904: 0AF0 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly6i = t0i - fly4i;
			t0r = t0r + fly4r;
00906: 0AF3 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00907: 0AF6 D8 45 CC    FADD    DWORD PTR FFFFFFCC[EBP]
00908: 0AF9 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = t0r + fly4r;
			t0i = t0i + fly4i;
00910: 0AFC D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00911: 0AFF D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
00912: 0B02 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = t0i + fly4i;
	
			fly3r = fly5r - fly2i;
00914: 0B05 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00915: 0B08 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
00916: 0B0B D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly5r - fly2i;
			fly3i = fly5i + fly2r;
00918: 0B0E D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00919: 0B14 D8 45 98    FADD    DWORD PTR FFFFFF98[EBP]
00920: 0B17 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly5i + fly2r;
			fly5r = fly5r + fly2i;
00922: 0B1A D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00923: 0B1D D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
00924: 0B20 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly5r + fly2i;
			fly5i = fly5i - fly2r;
00926: 0B23 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00927: 0B29 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
00928: 0B2C D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly5i - fly2r;
	
			fly4r = t1r - U3r * fly0r;
00930: 0B2F D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
00931: 0B35 D8 0D 00000000 FMUL DWORD PTR .data+000003e8
00932: 0B3B D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
00933: 0B3E D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r - U3i * fly0i;
00935: 0B41 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
00936: 0B47 D8 0D 00000000 FMUL DWORD PTR .data+000003ec
00937: 0B4D D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00938: 0B50 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = fly4r - U3i * fly0i;
			fly4i = t1i + U3i * fly0r;
00940: 0B53 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
00941: 0B59 D8 0D 00000000 FMUL DWORD PTR .data+000003f0
00942: 0B5F D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
00943: 0B62 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = t1i + U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
00945: 0B65 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
00946: 0B6B D8 0D 00000000 FMUL DWORD PTR .data+000003f4
00947: 0B71 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
00948: 0B74 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
00950: 0B77 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
00951: 0B7A D8 0D 00000000 FMUL DWORD PTR .data+000003f8
00952: 0B80 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
00953: 0B83 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
00955: 0B86 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
00956: 0B89 D8 0D 00000000 FMUL DWORD PTR .data+000003fc
00957: 0B8F D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
00958: 0B92 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = scale * t1i - fly4i;
	
			fly2r = fly7r + U3i * fly1r;
00960: 0B95 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00961: 0B9B D8 0D 00000000 FMUL DWORD PTR .data+00000400
00962: 0BA1 D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
00963: 0BA4 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly7r + U3i * fly1r;
			fly2r = fly2r - U3r * fly1i;
00965: 0BAA D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00966: 0BB0 D8 0D 00000000 FMUL DWORD PTR .data+00000404
00967: 0BB6 D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
00968: 0BBC D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly2r - U3r * fly1i;
			fly2i = fly7i + U3r * fly1r;
00970: 0BC2 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00971: 0BC8 D8 0D 00000000 FMUL DWORD PTR .data+00000408
00972: 0BCE D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
00973: 0BD1 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly7i + U3r * fly1r;
			fly2i = fly2i + U3i * fly1i;
00975: 0BD4 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00976: 0BDA D8 0D 00000000 FMUL DWORD PTR .data+0000040c
00977: 0BE0 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
00978: 0BE3 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly2i + U3i * fly1i;
			fly7r = scale * fly7r - fly2r;
00980: 0BE6 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
00981: 0BE9 D8 0D 00000000 FMUL DWORD PTR .data+00000410
00982: 0BEF D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
00983: 0BF5 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = scale * fly7r - fly2r;
			fly7i = scale * fly7i - fly2i;
00985: 0BF8 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
00986: 0BFB D8 0D 00000000 FMUL DWORD PTR .data+00000414
00987: 0C01 D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
00988: 0C04 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = scale * fly7i - fly2i;
	
			*(fly0P + FlyOffsetA) = fly6r;
00990: 0C07 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
00991: 0C0A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
00992: 0C10 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
00994: 0C13 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
00995: 0C16 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
00996: 0C1C 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
00998: 0C1F 8B 45 CC    MOV     EAX, DWORD PTR FFFFFFCC[EBP]
00999: 0C22 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
01001: 0C24 8B 45 D0    MOV     EAX, DWORD PTR FFFFFFD0[EBP]
01002: 0C27 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;
			*(fly2P + FlyOffsetA) = fly3r;
01004: 0C2A 8B 7D 84    MOV     EDI, DWORD PTR FFFFFF84[EBP]
01005: 0C2D 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01006: 0C33 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly3r;
			*(fly2P + FlyOffsetAIm) = fly3i;
01008: 0C36 8B 7D 88    MOV     EDI, DWORD PTR FFFFFF88[EBP]
01009: 0C39 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01010: 0C3F 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly3i;
			*(fly2P) = fly5r;
01012: 0C42 8B 45 94    MOV     EAX, DWORD PTR FFFFFF94[EBP]
01013: 0C45 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
01015: 0C47 8B 45 98    MOV     EAX, DWORD PTR FFFFFF98[EBP]
01016: 0C4A 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly1P + FlyOffsetA) = fly4r;
01018: 0C4D 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
01019: 0C50 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01020: 0C56 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
01022: 0C59 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
01023: 0C5C 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01024: 0C62 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
01026: 0C65 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
01027: 0C68 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
01029: 0C6A 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
01030: 0C6D 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;
			*(fly3P + FlyOffsetA) = fly2r;
01032: 0C70 8B BD FFFFFF7CMOV   EDI, DWORD PTR FFFFFF7C[EBP]
01033: 0C76 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01034: 0C7C 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly2r;
			*(fly3P + FlyOffsetAIm) = fly2i;
01036: 0C7F 8B 7D 80    MOV     EDI, DWORD PTR FFFFFF80[EBP]
01037: 0C82 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01038: 0C88 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly2i;
			*(fly3P) = fly7r;
01040: 0C8B 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
01041: 0C8E 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01043: 0C90 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
01044: 0C93 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
		
			fly0P = (fly0P + FlyOffsetB);
01046: 0C96 03 9D FFFFFEE0ADD   EBX, DWORD PTR FFFFFEE0[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01048: 0C9C 03 95 FFFFFEE0ADD   EDX, DWORD PTR FFFFFEE0[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01050: 0CA2 03 8D FFFFFEE0ADD   ECX, DWORD PTR FFFFFEE0[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01052: 0CA8 03 B5 FFFFFEE0ADD   ESI, DWORD PTR FFFFFEE0[EBP]
fly3P = (fly3P + FlyOffsetB);

		};
01054: 0CAE FF 8D FFFFFF00DEC   DWORD PTR FFFFFF00[EBP]
01055: 0CB4     L000E
01056: 0CB4 83 BD FFFFFF0000 CMP DWORD PTR FFFFFF00[EBP], 00000000
01057: 0CBB 0F 8F FFFFFCC8 JG   L000F
};
		
		NsameU4 >>= 2;
01059: 0CC1 C1 BD FFFFFF3C02 SAR DWORD PTR FFFFFF3C[EBP], 00000002
NsameU4 >>= 2;
		LoopN >>= 2;
01061: 0CC8 C1 BD FFFFFF3802 SAR DWORD PTR FFFFFF38[EBP], 00000002
LoopN >>= 2;
		NdiffU <<= 2;
01063: 0CCF C1 A5 FFFFFF5C02 SHL DWORD PTR FFFFFF5C[EBP], 00000002
NdiffU <<= 2;
		Flyinc = Flyinc << 2;
01065: 0CD6 C1 A5 FFFFFF4402 SHL DWORD PTR FFFFFF44[EBP], 00000002
Flyinc = Flyinc << 2;
	};
01067: 0CDD     L000D
};
};
01069: 0CDD     L0009
};

NsameU2 = NsameU4 >> 1;
01071: 0CDD 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01072: 0CE3 89 85 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], EAX
01073: 0CE9 D1 BD FFFFFF18SAR   DWORD PTR FFFFFF18[EBP], 00000001
01074: 0CEF             NOOP    
NsameU2 = NsameU4 >> 1;
NsameU1 = NsameU2 >> 1;
01076: 0CEF 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
01077: 0CF5 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
01078: 0CFB D1 BD FFFFFF20SAR   DWORD PTR FFFFFF20[EBP], 00000001
01079: 0D01             NOOP    
NsameU1 = NsameU2 >> 1;
Flyinc <<= 1;
01081: 0D01 D1 A5 FFFFFF44SHL   DWORD PTR FFFFFF44[EBP], 00000001
Flyinc <<= 1;
FlyOffsetA =  Flyinc << 2;
01083: 0D07 8B 85 FFFFFF44MOV   EAX, DWORD PTR FFFFFF44[EBP]
01084: 0D0D 89 85 FFFFFED8MOV   DWORD PTR FFFFFED8[EBP], EAX
01085: 0D13 C1 A5 FFFFFED802 SHL DWORD PTR FFFFFED8[EBP], 00000002
01086: 0D1A             NOOP    
FlyOffsetA =  Flyinc << 2;
FlyOffsetB =  FlyOffsetA << 1;
01088: 0D1A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01089: 0D20 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
01090: 0D26 D1 A5 FFFFFEECSHL   DWORD PTR FFFFFEEC[EBP], 00000001
01091: 0D2C             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
FlyOffsetAIm =  FlyOffsetA + 1;
01093: 0D2C 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01094: 0D32 89 85 FFFFFECCMOV   DWORD PTR FFFFFECC[EBP], EAX
01095: 0D38 83 85 FFFFFECC01 ADD DWORD PTR FFFFFECC[EBP], 00000001
01096: 0D3F             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
FlyOffsetBIm =  FlyOffsetB + 1;
01098: 0D3F 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01099: 0D45 89 85 FFFFFEF4MOV   DWORD PTR FFFFFEF4[EBP], EAX
01100: 0D4B 83 85 FFFFFEF401 ADD DWORD PTR FFFFFEF4[EBP], 00000001
01101: 0D52             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
LoopN >>= 1;
01103: 0D52 D1 BD FFFFFF38SAR   DWORD PTR FFFFFF38[EBP], 00000001
LoopN >>= 1;

/*   ****** RADIX 8 Stages	*/
for (stage = stage<<1; stage > 0 ; stage--){
01105: 0D58 D1 A5 FFFFFF40SHL   DWORD PTR FFFFFF40[EBP], 00000001
01106: 0D5E E9 00000EA1 JMP     L0010
01107: 0D63     L0011
for (stage = stage<<1; stage > 0 ; stage--){

	/* an fft stage is done in two parts to ease use of the single quadrant cos table	*/

/*	fftcalc1(iobuf, Utbl, N, NdiffU, LoopN);	*/
	if(!(stage&1)){
01109: 0D63 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
01110: 0D69 89 85 FFFFFF34MOV   DWORD PTR FFFFFF34[EBP], EAX
01111: 0D6F 81 A5 FFFFFF3400000001 AND DWORD PTR FFFFFF34[EBP], 00000001
01112: 0D79             NOOP    
01113: 0D79 83 BD FFFFFF3400 CMP DWORD PTR FFFFFF34[EBP], 00000000
01114: 0D80 0F 85 000000CC JNE  L0012
if(!(stage&1)){
		U0rP = &Utbl[0];
01116: 0D86 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01140: 0D89 BB 00000008 MOV     EBX, 00000008
01117: 0D8E 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
U0rP = &Utbl[0];
		U0iP = &Utbl[Ntbl[M-1]];	/* for RFFT */
01119: 0D94 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01120: 0D97 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
01121: 0D9E 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
01122: 0DA4 C1 A5 FFFFFF2C02 SHL DWORD PTR FFFFFF2C[EBP], 00000002
01123: 0DAB 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
01124: 0DB1 03 45 14    ADD     EAX, DWORD PTR 00000014[EBP]
01125: 0DB4 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
01126: 0DBA             NOOP    
U0iP = &Utbl[Ntbl[M-1]];	/* for RFFT */
		U1rP = U0rP;
01128: 0DBA 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01129: 0DBD 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
U1rP = U0rP;
		U1iP = U0iP;
01131: 0DC3 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
01132: 0DC9 89 85 FFFFFF54MOV   DWORD PTR FFFFFF54[EBP], EAX
U1iP = U0iP;
		U2rP = U0rP;
01134: 0DCF 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01135: 0DD2 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
U2rP = U0rP;
		U2iP = U0iP;
01137: 0DD8 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
01138: 0DDE 89 85 FFFFFF58MOV   DWORD PTR FFFFFF58[EBP], EAX
U2iP = U0iP;
		U3offset = (Ntbl[M+1]) / 8;	/* for RFFT */
01141: 0DE4 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01142: 0DE7 8B 04 8D 00000004 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+00000004[ECX*4]
01143: 0DEE 99          CDQ     
01144: 0DEF F7 FB       IDIV    EBX
01145: 0DF1 89 85 FFFFFF48MOV   DWORD PTR FFFFFF48[EBP], EAX
01146: 0DF7             NOOP    
U3offset = (Ntbl[M+1]) / 8;	/* for RFFT */

		IOP = ioptr;
01148: 0DF7 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
01149: 0DFA 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
IOP = ioptr;
	
		U0r =  *U0rP,
01151: 0E00 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01152: 0E03 D9 00       FLD     DWORD PTR 00000000[EAX]
01153: 0E05 D9 55 DC    FST     DWORD PTR FFFFFFDC[EBP]
01154: 0E08 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
01155: 0E0B 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
01156: 0E11 D9 00       FLD     DWORD PTR 00000000[EAX]
01157: 0E13 D9 55 E0    FST     DWORD PTR FFFFFFE0[EBP]
01158: 0E16 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
U0r =  *U0rP,
		U0i =  *U0iP;
		U1r =  *U1rP,
01160: 0E19 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
01161: 0E1C 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
01162: 0E1F 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
01163: 0E22 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
U1r =  *U1rP,
		U1i =  *U1iP;
		U2r =  *U2rP,
01165: 0E25 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
01166: 0E28 89 45 BC    MOV     DWORD PTR FFFFFFBC[EBP], EAX
01167: 0E2B 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
01168: 0E2E 89 45 C0    MOV     DWORD PTR FFFFFFC0[EBP], EAX
U2r =  *U2rP,
		U2i =  *U2iP;
		U3r =  *( U2rP + U3offset);
01170: 0E31 8B 8D FFFFFF48MOV   ECX, DWORD PTR FFFFFF48[EBP]
01171: 0E37 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01175: 0E3A 89 CA       MOV     EDX, ECX
01172: 0E3C 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
01176: 0E3F C1 E2 02    SHL     EDX, 00000002
01173: 0E42 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
U3r =  *( U2rP + U3offset);
		U3i =  *( U2iP - U3offset);
01177: 0E45 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
01178: 0E4B 29 D0       SUB     EAX, EDX
01179: 0E4D 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01180: 0E4F 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U3i =  *( U2iP - U3offset);
	}
01182: 0E52     L0012
}
	
	fly0P = IOP;
01184: 0E52 8B 9D FFFFFF30MOV   EBX, DWORD PTR FFFFFF30[EBP]
fly0P = IOP;
	fly1P = (IOP+Flyinc);
01186: 0E58 8B BD FFFFFF44MOV   EDI, DWORD PTR FFFFFF44[EBP]
01189: 0E5E 8B 95 FFFFFF30MOV   EDX, DWORD PTR FFFFFF30[EBP]
01187: 0E64 C1 E7 02    SHL     EDI, 00000002
01188: 0E67             NOOP    
01190: 0E67 01 FA       ADD     EDX, EDI
01191: 0E69             NOOP    
fly1P = (IOP+Flyinc);
	fly2P = (fly1P+Flyinc);
01193: 0E69 89 D1       MOV     ECX, EDX
01201: 0E6B 8B 85 FFFFFF5CMOV   EAX, DWORD PTR FFFFFF5C[EBP]
01194: 0E71 01 F9       ADD     ECX, EDI
01195: 0E73             NOOP    
fly2P = (fly1P+Flyinc);
	fly3P = (fly2P+Flyinc);
01197: 0E73 89 CE       MOV     ESI, ECX
01202: 0E75 89 85 FFFFFF08MOV   DWORD PTR FFFFFF08[EBP], EAX
01198: 0E7B 01 FE       ADD     ESI, EDI
01199: 0E7D             NOOP    
fly3P = (fly2P+Flyinc);

	for (diffUcnt = (NdiffU)>>1; diffUcnt > 0; diffUcnt--){
01203: 0E7D D1 BD FFFFFF08SAR   DWORD PTR FFFFFF08[EBP], 00000001
01204: 0E83             NOOP    
01205: 0E83 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01206: 0E89 89 85 FFFFFF0CMOV   DWORD PTR FFFFFF0C[EBP], EAX
01207: 0E8F C1 A5 FFFFFF0C02 SHL DWORD PTR FFFFFF0C[EBP], 00000002
01208: 0E96             NOOP    
01209: 0E96 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
01210: 0E9C 89 85 FFFFFF10MOV   DWORD PTR FFFFFF10[EBP], EAX
01211: 0EA2 C1 A5 FFFFFF1002 SHL DWORD PTR FFFFFF10[EBP], 00000002
01212: 0EA9             NOOP    
01213: 0EA9 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
01214: 0EAF 89 85 FFFFFF24MOV   DWORD PTR FFFFFF24[EBP], EAX
01215: 0EB5 81 A5 FFFFFF2400000001 AND DWORD PTR FFFFFF24[EBP], 00000001
01216: 0EBF             NOOP    
01217: 0EBF 8B 85 FFFFFF20MOV   EAX, DWORD PTR FFFFFF20[EBP]
01218: 0EC5 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
01219: 0ECB C1 A5 FFFFFF1402 SHL DWORD PTR FFFFFF14[EBP], 00000002
01220: 0ED2             NOOP    
01221: 0ED2 8B 85 FFFFFF48MOV   EAX, DWORD PTR FFFFFF48[EBP]
01222: 0ED8 89 85 FFFFFF1CMOV   DWORD PTR FFFFFF1C[EBP], EAX
01223: 0EDE C1 A5 FFFFFF1C02 SHL DWORD PTR FFFFFF1C[EBP], 00000002
01224: 0EE5             NOOP    
01225: 0EE5 8B 85 FFFFFF44MOV   EAX, DWORD PTR FFFFFF44[EBP]
01226: 0EEB 89 85 FFFFFF04MOV   DWORD PTR FFFFFF04[EBP], EAX
01227: 0EF1 C1 A5 FFFFFF0402 SHL DWORD PTR FFFFFF04[EBP], 00000002
01228: 0EF8             NOOP    
01229: 0EF8 E9 00000C7F JMP     L0013
01230: 0EFD     L0014
for (diffUcnt = (NdiffU)>>1; diffUcnt > 0; diffUcnt--){

			/* Butterflys		*/
			/*
			f0	-	-	t0	-	-	t0	-	-	t0
			f1	-U0	-	t1	-	-	t1	-	-	t1
			f2	-	-	f2	-U1	-	f5	-	-	f3
			f3	-U0	-	f1	-U1a-	f7	-	-	f7
			f4	-	-	f4	-	-	f4	-U2	-	f6
			f5	-U0	-	f0	-	-	f0	-U3	-	f4
			f6	-	-	f6	-U1	-	f2	-U2a-	f2
			f7	-U0	-	f3	-U1a-	f1	-U3a-	f5
			*/
		
		fly0r = *(IOP);
01232: 0EFD 8B 85 FFFFFF30MOV   EAX, DWORD PTR FFFFFF30[EBP]
01233: 0F03 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01234: 0F05 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
fly0r = *(IOP);
		fly0i = *(IOP+1);
01236: 0F0B 8B 85 FFFFFF30MOV   EAX, DWORD PTR FFFFFF30[EBP]
01237: 0F11 8B 40 04    MOV     EAX, DWORD PTR 00000004[EAX]
01238: 0F14 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(IOP+1);
		fly1r = *(fly1P);
01240: 0F1A 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
01241: 0F1C 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly1P);
		fly1i = *(fly1P+1);
01243: 0F22 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
01244: 0F25 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly1i = *(fly1P+1);

		for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
01246: 0F2B 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
01247: 0F31 89 85 FFFFFF00MOV   DWORD PTR FFFFFF00[EBP], EAX
01248: 0F37 83 85 FFFFFF00FF ADD DWORD PTR FFFFFF00[EBP], FFFFFFFF
01249: 0F3E             NOOP    
01250: 0F3E 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01251: 0F44 89 85 FFFFFEE4MOV   DWORD PTR FFFFFEE4[EBP], EAX
01252: 0F4A C1 A5 FFFFFEE402 SHL DWORD PTR FFFFFEE4[EBP], 00000002
01253: 0F51             NOOP    
01254: 0F51 E9 000005C4 JMP     L0015
01255: 0F56     L0016
for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
	
			fly2r = *(fly2P);
01257: 0F56 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01258: 0F58 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
01260: 0F5E 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01261: 0F61 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly2P + 1);
			fly3r = *(fly3P);
01263: 0F64 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01264: 0F66 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly3P);
			fly3i = *(fly3P + 1);
01266: 0F69 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01267: 0F6C 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
01269: 0F6F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01270: 0F75 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01271: 0F78 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
01273: 0F7B 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01274: 0F81 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01275: 0F84 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly5r = *(fly1P + FlyOffsetA);
01277: 0F87 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01278: 0F8D 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01279: 0F90 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
			fly5i = *(fly1P + FlyOffsetAIm);
01281: 0F93 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01282: 0F99 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01283: 0F9C 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
01285: 0F9F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01286: 0FA5 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01287: 0FA8 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
01289: 0FAB 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01290: 0FB1 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01291: 0FB4 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly7r = *(fly3P + FlyOffsetA);
01293: 0FB7 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01294: 0FBD 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01295: 0FC0 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
			fly7i = *(fly3P + FlyOffsetAIm);
01297: 0FC3 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01298: 0FC9 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01299: 0FCC 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

			t1r = fly0r - U0r * fly1r;
01301: 0FCF D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01302: 0FD5 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01303: 0FD8 D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
01304: 0FDE D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = fly0r - U0r * fly1r;
			t1r = t1r - U0i * fly1i;
01306: 0FE1 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01307: 0FE7 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01308: 0FEA D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01309: 0FED D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = t1r - U0i * fly1i;
			t1i = fly0i + U0i * fly1r;
01311: 0FF0 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01312: 0FF6 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01313: 0FF9 D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
01314: 0FFF D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = fly0i + U0i * fly1r;
			t1i = t1i - U0r * fly1i;
01316: 1002 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01317: 1008 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01318: 100B D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
01319: 100E D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = t1i - U0r * fly1i;
			t0r = scale * fly0r - t1r;
01321: 1011 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
01322: 1017 D8 0D 00000000 FMUL DWORD PTR .data+00000418
01323: 101D D8 65 D4    FSUB    DWORD PTR FFFFFFD4[EBP]
01324: 1020 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = scale * fly0r - t1r;
			t0i = scale * fly0i - t1i;
01326: 1023 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
01327: 1029 D8 0D 00000000 FMUL DWORD PTR .data+0000041c
01328: 102F D8 65 D8    FSUB    DWORD PTR FFFFFFD8[EBP]
01329: 1032 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = scale * fly0i - t1i;
	
			fly1r = fly2r - U0r * fly3r;
01331: 1035 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01332: 1038 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01333: 103B D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01334: 1041 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly2r - U0r * fly3r;
			fly1r = fly1r - U0i * fly3i;
01336: 1047 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01337: 104A D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01338: 104D D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
01339: 1053 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly1r - U0i * fly3i;
			fly1i = fly2i + U0i * fly3r;
01341: 1059 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01342: 105C D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01343: 105F D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
01344: 1062 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly2i + U0i * fly3r;
			fly1i = fly1i - U0r * fly3i;
01346: 1068 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01347: 106B D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01348: 106E D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
01349: 1074 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly1i - U0r * fly3i;
			fly2r = scale * fly2r - fly1r;
01351: 107A D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01352: 1080 D8 0D 00000000 FMUL DWORD PTR .data+00000420
01353: 1086 D8 A5 FFFFFF74FSUB  DWORD PTR FFFFFF74[EBP]
01354: 108C D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = scale * fly2r - fly1r;
			fly2i = scale * fly2i - fly1i;
01356: 1092 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01357: 1095 D8 0D 00000000 FMUL DWORD PTR .data+00000424
01358: 109B D8 A5 FFFFFF78FSUB  DWORD PTR FFFFFF78[EBP]
01359: 10A1 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = scale * fly2i - fly1i;
	
			fly0r = fly4r - U0r * fly5r;
01361: 10A4 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01362: 10A7 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01363: 10AA D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01364: 10AD D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly4r - U0r * fly5r;
			fly0r = fly0r - U0i * fly5i;
01366: 10B3 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01367: 10B6 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01368: 10B9 D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
01369: 10BF D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly0r - U0i * fly5i;
			fly0i = fly4i + U0i * fly5r;
01371: 10C5 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01372: 10C8 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01373: 10CB D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
01374: 10CE D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly4i + U0i * fly5r;
			fly0i = fly0i - U0r * fly5i;
01376: 10D4 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01377: 10D7 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01378: 10DA D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
01379: 10E0 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly0i - U0r * fly5i;
			fly4r = scale * fly4r - fly0r;
01381: 10E6 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01382: 10E9 D8 0D 00000000 FMUL DWORD PTR .data+00000428
01383: 10EF D8 A5 FFFFFF6CFSUB  DWORD PTR FFFFFF6C[EBP]
01384: 10F5 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = scale * fly4r - fly0r;
			fly4i = scale * fly4i - fly0i;
01386: 10F8 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01387: 10FB D8 0D 00000000 FMUL DWORD PTR .data+0000042c
01388: 1101 D8 A5 FFFFFF70FSUB  DWORD PTR FFFFFF70[EBP]
01389: 1107 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = scale * fly4i - fly0i;
	
			fly3r = fly6r - U0r * fly7r;
01391: 110A D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01392: 110D D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01393: 1110 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01394: 1113 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly6r - U0r * fly7r;
			fly3r = fly3r - U0i * fly7i;
01396: 1116 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01397: 1119 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01398: 111C D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
01399: 111F D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly3r - U0i * fly7i;
			fly3i = fly6i + U0i * fly7r;
01401: 1122 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01402: 1125 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01403: 1128 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01404: 112B D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly6i + U0i * fly7r;
			fly3i = fly3i - U0r * fly7i;
01406: 112E D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01407: 1131 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01408: 1134 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01409: 1137 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly3i - U0r * fly7i;
			fly6r = scale * fly6r - fly3r;
01411: 113A D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01412: 113D D8 0D 00000000 FMUL DWORD PTR .data+00000430
01413: 1143 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01414: 1146 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly6r = scale * fly6r - fly3r;
			fly6i = scale * fly6i - fly3i;
01416: 1149 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01417: 114C D8 0D 00000000 FMUL DWORD PTR .data+00000434
01418: 1152 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01419: 1155 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly6i = scale * fly6i - fly3i;
	

			fly5r = t0r - U1r * fly2r;
01421: 1158 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01422: 115E D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01423: 1161 D8 6D CC    FSUBR   DWORD PTR FFFFFFCC[EBP]
01424: 1164 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = t0r - U1r * fly2r;
			fly5r = fly5r - U1i * fly2i;
01426: 1167 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01427: 116A D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01428: 116D D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01429: 1170 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly5r - U1i * fly2i;
			fly5i = t0i + U1i * fly2r;
01431: 1173 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01432: 1179 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01433: 117C D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
01434: 117F D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = t0i + U1i * fly2r;
			fly5i = fly5i - U1r * fly2i;
01436: 1182 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01437: 1185 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01438: 1188 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01439: 118B D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly5i - U1r * fly2i;
			t0r = scale * t0r - fly5r;
01441: 118E D9 45 CC    FLD     DWORD PTR FFFFFFCC[EBP]
01442: 1191 D8 0D 00000000 FMUL DWORD PTR .data+00000438
01443: 1197 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01444: 119A D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = scale * t0r - fly5r;
			t0i = scale * t0i - fly5i;
01446: 119D D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
01447: 11A0 D8 0D 00000000 FMUL DWORD PTR .data+0000043c
01448: 11A6 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01449: 11A9 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = scale * t0i - fly5i;

			fly7r = t1r + U1i * fly1r;
01451: 11AC D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01452: 11B2 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01453: 11B5 D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
01454: 11B8 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = t1r + U1i * fly1r;
			fly7r = fly7r - U1r * fly1i;
01456: 11BB D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01457: 11C1 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01458: 11C4 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01459: 11C7 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = fly7r - U1r * fly1i;
			fly7i = t1i + U1r * fly1r;
01461: 11CA D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01462: 11D0 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01463: 11D3 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
01464: 11D6 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = t1i + U1r * fly1r;
			fly7i = fly7i + U1i * fly1i;
01466: 11D9 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01467: 11DF D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01468: 11E2 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
01469: 11E5 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = fly7i + U1i * fly1i;
			t1r = scale * t1r - fly7r;
01471: 11E8 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
01472: 11EB D8 0D 00000000 FMUL DWORD PTR .data+00000440
01473: 11F1 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01474: 11F4 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = scale * t1r - fly7r;
			t1i = scale * t1i - fly7i;
01476: 11F7 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
01477: 11FA D8 0D 00000000 FMUL DWORD PTR .data+00000444
01478: 1200 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01479: 1203 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = scale * t1i - fly7i;

			fly2r = fly4r - U1r * fly6r;
01481: 1206 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01482: 1209 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01483: 120C D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01484: 120F D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly4r - U1r * fly6r;
			fly2r = fly2r - U1i * fly6i;
01486: 1215 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01487: 1218 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01488: 121B D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01489: 1221 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly2r - U1i * fly6i;
			fly2i = fly4i + U1i * fly6r;
01491: 1227 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01492: 122A D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01493: 122D D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
01494: 1230 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly4i + U1i * fly6r;
			fly2i = fly2i - U1r * fly6i;
01496: 1233 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01497: 1236 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01498: 1239 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01499: 123C D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly2i - U1r * fly6i;
			fly4r = scale * fly4r - fly2r;
01501: 123F D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01502: 1242 D8 0D 00000000 FMUL DWORD PTR .data+00000448
01503: 1248 D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01504: 124E D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = scale * fly4r - fly2r;
			fly4i = scale * fly4i - fly2i;
01506: 1251 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01507: 1254 D8 0D 00000000 FMUL DWORD PTR .data+0000044c
01508: 125A D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01509: 125D D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = scale * fly4i - fly2i;

			fly1r = fly0r + U1i * fly3r;
01511: 1260 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01512: 1263 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01513: 1266 D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
01514: 126C D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly0r + U1i * fly3r;
			fly1r = fly1r - U1r * fly3i;
01516: 1272 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01517: 1275 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01518: 1278 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
01519: 127E D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly1r - U1r * fly3i;
			fly1i = fly0i + U1r * fly3r;
01521: 1284 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01522: 1287 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01523: 128A D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
01524: 1290 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly0i + U1r * fly3r;
			fly1i = fly1i + U1i * fly3i;
01526: 1296 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01527: 1299 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01528: 129C D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
01529: 12A2 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly1i + U1i * fly3i;
			fly0r = scale * fly0r - fly1r;
01531: 12A8 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
01532: 12AE D8 0D 00000000 FMUL DWORD PTR .data+00000450
01533: 12B4 D8 A5 FFFFFF74FSUB  DWORD PTR FFFFFF74[EBP]
01534: 12BA D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = scale * fly0r - fly1r;
			fly0i = scale * fly0i - fly1i;
01536: 12C0 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
01537: 12C6 D8 0D 00000000 FMUL DWORD PTR .data+00000454
01538: 12CC D8 A5 FFFFFF78FSUB  DWORD PTR FFFFFF78[EBP]
01539: 12D2 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = scale * fly0i - fly1i;

			fly6r = t0r - U2r * fly4r;
01541: 12D8 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01542: 12DB D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01543: 12DE D8 6D CC    FSUBR   DWORD PTR FFFFFFCC[EBP]
01544: 12E1 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly6r = t0r - U2r * fly4r;
			fly6r = fly6r - U2i * fly4i;
01546: 12E4 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01547: 12E7 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01548: 12EA D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01549: 12ED D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly6r = fly6r - U2i * fly4i;
			fly6i = t0i + U2i * fly4r;
01551: 12F0 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01552: 12F3 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01553: 12F6 D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
01554: 12F9 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly6i = t0i + U2i * fly4r;
			fly6i = fly6i - U2r * fly4i;
01556: 12FC D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01557: 12FF D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01558: 1302 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01559: 1305 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly6i = fly6i - U2r * fly4i;
			t0r = scale * t0r - fly6r;
01561: 1308 D9 45 CC    FLD     DWORD PTR FFFFFFCC[EBP]
01562: 130B D8 0D 00000000 FMUL DWORD PTR .data+00000458
01563: 1311 D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
01564: 1314 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = scale * t0r - fly6r;
			t0i = scale * t0i - fly6i;
01566: 1317 D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
01567: 131A D8 0D 00000000 FMUL DWORD PTR .data+0000045c
01568: 1320 D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
01569: 1323 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = scale * t0i - fly6i;

			fly3r = fly5r - U2i * fly2r;
01571: 1326 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01572: 132C D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01573: 132F D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01574: 1332 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly5r - U2i * fly2r;
			fly3r = fly3r + U2r * fly2i;
01576: 1335 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01577: 1338 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01578: 133B D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
01579: 133E D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly3r + U2r * fly2i;
			fly3i = fly5i - U2r * fly2r;
01581: 1341 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01582: 1347 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01583: 134A D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01584: 134D D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly5i - U2r * fly2r;
			fly3i = fly3i - U2i * fly2i;
01586: 1350 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01587: 1353 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01588: 1356 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01589: 1359 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly3i - U2i * fly2i;
			fly2r = scale * fly5r - fly3r;
01591: 135C D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01592: 135F D8 0D 00000000 FMUL DWORD PTR .data+00000460
01593: 1365 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01594: 1368 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = scale * fly5r - fly3r;
			fly2i = scale * fly5i - fly3i;
01596: 136E D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01597: 1371 D8 0D 00000000 FMUL DWORD PTR .data+00000464
01598: 1377 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01599: 137A D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = scale * fly5i - fly3i;

			fly4r = t1r - U3r * fly0r;
01601: 137D D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
01602: 1383 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01603: 1386 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01604: 1389 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r - U3i * fly0i;
01606: 138C D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
01607: 1392 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01608: 1395 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01609: 1398 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = fly4r - U3i * fly0i;
			fly4i = t1i + U3i * fly0r;
01611: 139B D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
01612: 13A1 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01613: 13A4 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
01614: 13A7 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = t1i + U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
01616: 13AA D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
01617: 13B0 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01618: 13B3 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01619: 13B6 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
01621: 13B9 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
01622: 13BC D8 0D 00000000 FMUL DWORD PTR .data+00000468
01623: 13C2 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
01624: 13C5 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
01626: 13C8 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
01627: 13CB D8 0D 00000000 FMUL DWORD PTR .data+0000046c
01628: 13D1 D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
01629: 13D4 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = scale * t1i - fly4i;

			fly5r = fly7r + U3i * fly1r;
01631: 13D7 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01632: 13DD D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01633: 13E0 D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
01634: 13E3 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly7r + U3i * fly1r;
			fly5r = fly5r - U3r * fly1i;
01636: 13E6 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01637: 13EC D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01638: 13EF D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01639: 13F2 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly5r - U3r * fly1i;
			fly5i = fly7i + U3r * fly1r;
01641: 13F5 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01642: 13FB D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01643: 13FE D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
01644: 1401 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly7i + U3r * fly1r;
			fly5i = fly5i + U3i * fly1i;
01646: 1404 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01647: 140A D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01648: 140D D8 45 98    FADD    DWORD PTR FFFFFF98[EBP]
01649: 1410 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly5i + U3i * fly1i;
			fly7r = scale * fly7r - fly5r;
01651: 1413 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01652: 1416 D8 0D 00000000 FMUL DWORD PTR .data+00000470
01653: 141C D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01654: 141F D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = scale * fly7r - fly5r;
			fly7i = scale * fly7i - fly5i;
01656: 1422 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01657: 1425 D8 0D 00000000 FMUL DWORD PTR .data+00000474
01658: 142B D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01659: 142E D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = scale * fly7i - fly5i;

			*(fly0P + FlyOffsetA) = fly6r;
01661: 1431 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
01662: 1434 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01663: 143A 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
01665: 143D 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
01666: 1440 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01667: 1446 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
01669: 1449 8B 45 CC    MOV     EAX, DWORD PTR FFFFFFCC[EBP]
01670: 144C 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
01672: 144E 8B 45 D0    MOV     EAX, DWORD PTR FFFFFFD0[EBP]
01673: 1451 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;
			*(fly2P) = fly3r;
01675: 1454 8B 45 84    MOV     EAX, DWORD PTR FFFFFF84[EBP]
01676: 1457 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
			*(fly2P + 1) = fly3i;
01678: 1459 8B 45 88    MOV     EAX, DWORD PTR FFFFFF88[EBP]
01679: 145C 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
			*(fly2P + FlyOffsetA) = fly2r;
01681: 145F 8B BD FFFFFF7CMOV   EDI, DWORD PTR FFFFFF7C[EBP]
01682: 1465 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01683: 146B 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
01685: 146E 8B 7D 80    MOV     EDI, DWORD PTR FFFFFF80[EBP]
01686: 1471 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01687: 1477 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;

			fly0r = *(fly0P + FlyOffsetB);
01689: 147A 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01690: 1480 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01691: 1483 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
fly0r = *(fly0P + FlyOffsetB);
			fly0i = *(fly0P + FlyOffsetBIm);
01693: 1489 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
01694: 148F 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01695: 1492 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(fly0P + FlyOffsetBIm);

			*(fly1P + FlyOffsetA) = fly4r;
01697: 1498 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
01698: 149B 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01699: 14A1 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
01701: 14A4 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
01702: 14A7 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01703: 14AD 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
01705: 14B0 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
01706: 14B3 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
01708: 14B5 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
01709: 14B8 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;

			fly1r = *(fly1P + FlyOffsetB);
01711: 14BB 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01712: 14C1 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01713: 14C4 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly1P + FlyOffsetB);
			fly1i = *(fly1P + FlyOffsetBIm);
01715: 14CA 8B 85 FFFFFEF4MOV   EAX, DWORD PTR FFFFFEF4[EBP]
01716: 14D0 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01717: 14D3 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly1i = *(fly1P + FlyOffsetBIm);

			*(fly3P + FlyOffsetA) = fly5r;
01719: 14D9 8B 7D 94    MOV     EDI, DWORD PTR FFFFFF94[EBP]
01720: 14DC 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01721: 14E2 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly5r;
			*(fly3P + FlyOffsetAIm) = fly5i;
01723: 14E5 8B 7D 98    MOV     EDI, DWORD PTR FFFFFF98[EBP]
01724: 14E8 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01725: 14EE 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly5i;
			*(fly3P) = fly7r;
01727: 14F1 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
01728: 14F4 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01730: 14F6 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
01731: 14F9 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

			fly0P = (fly0P + FlyOffsetB);
01733: 14FC 03 9D FFFFFEE4ADD   EBX, DWORD PTR FFFFFEE4[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01735: 1502 03 95 FFFFFEE4ADD   EDX, DWORD PTR FFFFFEE4[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01737: 1508 03 8D FFFFFEE4ADD   ECX, DWORD PTR FFFFFEE4[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01739: 150E 03 B5 FFFFFEE4ADD   ESI, DWORD PTR FFFFFEE4[EBP]
fly3P = (fly3P + FlyOffsetB);
		};
01741: 1514 FF 8D FFFFFF00DEC   DWORD PTR FFFFFF00[EBP]
01742: 151A     L0015
01743: 151A 83 BD FFFFFF0000 CMP DWORD PTR FFFFFF00[EBP], 00000000
01744: 1521 0F 8F FFFFFA2F JG   L0016
};

		fly2r = *(fly2P);
01746: 1527 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01747: 1529 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly2P);
		fly2i = *(fly2P + 1);
01749: 152F 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01750: 1532 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly2P + 1);
		fly3r = *(fly3P);
01752: 1535 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01753: 1537 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly3P);
		fly3i = *(fly3P + 1);
01755: 153A 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01756: 153D 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly3P + 1);
		fly4r = *(fly0P + FlyOffsetA);
01758: 1540 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01759: 1546 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01760: 1549 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
		fly4i = *(fly0P + FlyOffsetAIm);
01762: 154C 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01763: 1552 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01764: 1555 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
		fly5r = *(fly1P + FlyOffsetA);
01766: 1558 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01767: 155E 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01768: 1561 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
		fly5i = *(fly1P + FlyOffsetAIm);
01770: 1564 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01771: 156A 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01772: 156D 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
		fly6r = *(fly2P + FlyOffsetA);
01774: 1570 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01775: 1576 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01776: 1579 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
		fly6i = *(fly2P + FlyOffsetAIm);
01778: 157C 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01779: 1582 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01780: 1585 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
		fly7r = *(fly3P + FlyOffsetA);
01782: 1588 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
01783: 158E 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01784: 1591 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
		fly7i = *(fly3P + FlyOffsetAIm);
01786: 1594 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
01787: 159A 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01788: 159D 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

		t1r = fly0r - U0r * fly1r;
01790: 15A0 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01791: 15A6 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01792: 15A9 D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
01793: 15AF D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = fly0r - U0r * fly1r;
		t1r = t1r - U0i * fly1i;
01795: 15B2 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01796: 15B8 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01797: 15BB D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01798: 15BE D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = t1r - U0i * fly1i;
		t1i = fly0i + U0i * fly1r;
01800: 15C1 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01801: 15C7 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01802: 15CA D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
01803: 15D0 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = fly0i + U0i * fly1r;
		t1i = t1i - U0r * fly1i;
01805: 15D3 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01806: 15D9 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01807: 15DC D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
01808: 15DF D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = t1i - U0r * fly1i;
		t0r = scale * fly0r - t1r;
01810: 15E2 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
01811: 15E8 D8 0D 00000000 FMUL DWORD PTR .data+00000478
01812: 15EE D8 65 D4    FSUB    DWORD PTR FFFFFFD4[EBP]
01813: 15F1 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = scale * fly0r - t1r;
		t0i = scale * fly0i - t1i;
01815: 15F4 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
01816: 15FA D8 0D 00000000 FMUL DWORD PTR .data+0000047c
01817: 1600 D8 65 D8    FSUB    DWORD PTR FFFFFFD8[EBP]
01818: 1603 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = scale * fly0i - t1i;

		fly1r = fly2r - U0r * fly3r;
01820: 1606 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01821: 1609 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01822: 160C D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01823: 1612 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly2r - U0r * fly3r;
		fly1r = fly1r - U0i * fly3i;
01825: 1618 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01826: 161B D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01827: 161E D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
01828: 1624 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly1r - U0i * fly3i;
		fly1i = fly2i + U0i * fly3r;
01830: 162A D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01831: 162D D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01832: 1630 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
01833: 1633 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly2i + U0i * fly3r;
		fly1i = fly1i - U0r * fly3i;
01835: 1639 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01836: 163C D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01837: 163F D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
01838: 1645 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly1i - U0r * fly3i;
		fly2r = scale * fly2r - fly1r;
01840: 164B D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01841: 1651 D8 0D 00000000 FMUL DWORD PTR .data+00000480
01842: 1657 D8 A5 FFFFFF74FSUB  DWORD PTR FFFFFF74[EBP]
01843: 165D D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = scale * fly2r - fly1r;
		fly2i = scale * fly2i - fly1i;
01845: 1663 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01846: 1666 D8 0D 00000000 FMUL DWORD PTR .data+00000484
01847: 166C D8 A5 FFFFFF78FSUB  DWORD PTR FFFFFF78[EBP]
01848: 1672 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = scale * fly2i - fly1i;

		fly0r = fly4r - U0r * fly5r;
01850: 1675 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01851: 1678 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01852: 167B D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01853: 167E D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly4r - U0r * fly5r;
		fly0r = fly0r - U0i * fly5i;
01855: 1684 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01856: 1687 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01857: 168A D8 AD FFFFFF6CFSUBR DWORD PTR FFFFFF6C[EBP]
01858: 1690 D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly0r - U0i * fly5i;
		fly0i = fly4i + U0i * fly5r;
01860: 1696 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01861: 1699 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01862: 169C D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
01863: 169F D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly4i + U0i * fly5r;
		fly0i = fly0i - U0r * fly5i;
01865: 16A5 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01866: 16A8 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01867: 16AB D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
01868: 16B1 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly0i - U0r * fly5i;
		fly4r = scale * fly4r - fly0r;
01870: 16B7 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01871: 16BA D8 0D 00000000 FMUL DWORD PTR .data+00000488
01872: 16C0 D8 A5 FFFFFF6CFSUB  DWORD PTR FFFFFF6C[EBP]
01873: 16C6 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = scale * fly4r - fly0r;
		fly4i = scale * fly4i - fly0i;
01875: 16C9 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01876: 16CC D8 0D 00000000 FMUL DWORD PTR .data+0000048c
01877: 16D2 D8 A5 FFFFFF70FSUB  DWORD PTR FFFFFF70[EBP]
01878: 16D8 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = scale * fly4i - fly0i;

		fly3r = fly6r - U0r * fly7r;
01880: 16DB D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01881: 16DE D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01882: 16E1 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01883: 16E4 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly6r - U0r * fly7r;
		fly3r = fly3r - U0i * fly7i;
01885: 16E7 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01886: 16EA D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01887: 16ED D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
01888: 16F0 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly3r - U0i * fly7i;
		fly3i = fly6i + U0i * fly7r;
01890: 16F3 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01891: 16F6 D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
01892: 16F9 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01893: 16FC D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly6i + U0i * fly7r;
		fly3i = fly3i - U0r * fly7i;
01895: 16FF D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01896: 1702 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
01897: 1705 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01898: 1708 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly3i - U0r * fly7i;
		fly6r = scale * fly6r - fly3r;
01900: 170B D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01901: 170E D8 0D 00000000 FMUL DWORD PTR .data+00000490
01902: 1714 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01903: 1717 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly6r = scale * fly6r - fly3r;
		fly6i = scale * fly6i - fly3i;
01905: 171A D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01906: 171D D8 0D 00000000 FMUL DWORD PTR .data+00000494
01907: 1723 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01908: 1726 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly6i = scale * fly6i - fly3i;


		fly5r = t0r - U1r * fly2r;
01910: 1729 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01911: 172F D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01912: 1732 D8 6D CC    FSUBR   DWORD PTR FFFFFFCC[EBP]
01913: 1735 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = t0r - U1r * fly2r;
		fly5r = fly5r - U1i * fly2i;
01915: 1738 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01916: 173B D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01917: 173E D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01918: 1741 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly5r - U1i * fly2i;
		fly5i = t0i + U1i * fly2r;
01920: 1744 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01921: 174A D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01922: 174D D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
01923: 1750 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = t0i + U1i * fly2r;
		fly5i = fly5i - U1r * fly2i;
01925: 1753 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01926: 1756 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01927: 1759 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01928: 175C D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly5i - U1r * fly2i;
		t0r = scale * t0r - fly5r;
01930: 175F D9 45 CC    FLD     DWORD PTR FFFFFFCC[EBP]
01931: 1762 D8 0D 00000000 FMUL DWORD PTR .data+00000498
01932: 1768 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01933: 176B D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = scale * t0r - fly5r;
		t0i = scale * t0i - fly5i;
01935: 176E D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
01936: 1771 D8 0D 00000000 FMUL DWORD PTR .data+0000049c
01937: 1777 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01938: 177A D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = scale * t0i - fly5i;

		fly7r = t1r + U1i * fly1r;
01940: 177D D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01941: 1783 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01942: 1786 D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
01943: 1789 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = t1r + U1i * fly1r;
		fly7r = fly7r - U1r * fly1i;
01945: 178C D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01946: 1792 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01947: 1795 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01948: 1798 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = fly7r - U1r * fly1i;
		fly7i = t1i + U1r * fly1r;
01950: 179B D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01951: 17A1 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01952: 17A4 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
01953: 17A7 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = t1i + U1r * fly1r;
		fly7i = fly7i + U1i * fly1i;
01955: 17AA D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01956: 17B0 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01957: 17B3 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
01958: 17B6 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = fly7i + U1i * fly1i;
		t1r = scale * t1r - fly7r;
01960: 17B9 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
01961: 17BC D8 0D 00000000 FMUL DWORD PTR .data+000004a0
01962: 17C2 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01963: 17C5 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = scale * t1r - fly7r;
		t1i = scale * t1i - fly7i;
01965: 17C8 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
01966: 17CB D8 0D 00000000 FMUL DWORD PTR .data+000004a4
01967: 17D1 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01968: 17D4 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = scale * t1i - fly7i;

		fly2r = fly4r - U1r * fly6r;
01970: 17D7 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01971: 17DA D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01972: 17DD D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01973: 17E0 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly4r - U1r * fly6r;
		fly2r = fly2r - U1i * fly6i;
01975: 17E6 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01976: 17E9 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01977: 17EC D8 AD FFFFFF7CFSUBR DWORD PTR FFFFFF7C[EBP]
01978: 17F2 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly2r - U1i * fly6i;
		fly2i = fly4i + U1i * fly6r;
01980: 17F8 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01981: 17FB D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01982: 17FE D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
01983: 1801 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly4i + U1i * fly6r;
		fly2i = fly2i - U1r * fly6i;
01985: 1804 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01986: 1807 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01987: 180A D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01988: 180D D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly2i - U1r * fly6i;
		fly4r = scale * fly4r - fly2r;
01990: 1810 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01991: 1813 D8 0D 00000000 FMUL DWORD PTR .data+000004a8
01992: 1819 D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01993: 181F D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = scale * fly4r - fly2r;
		fly4i = scale * fly4i - fly2i;
01995: 1822 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01996: 1825 D8 0D 00000000 FMUL DWORD PTR .data+000004ac
01997: 182B D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01998: 182E D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = scale * fly4i - fly2i;

		fly1r = fly0r + U1i * fly3r;
02000: 1831 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02001: 1834 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02002: 1837 D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
02003: 183D D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly0r + U1i * fly3r;
		fly1r = fly1r - U1r * fly3i;
02005: 1843 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02006: 1846 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02007: 1849 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
02008: 184F D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly1r - U1r * fly3i;
		fly1i = fly0i + U1r * fly3r;
02010: 1855 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02011: 1858 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02012: 185B D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
02013: 1861 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly0i + U1r * fly3r;
		fly1i = fly1i + U1i * fly3i;
02015: 1867 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02016: 186A D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02017: 186D D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
02018: 1873 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly1i + U1i * fly3i;
		fly0r = scale * fly0r - fly1r;
02020: 1879 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
02021: 187F D8 0D 00000000 FMUL DWORD PTR .data+000004b0
02022: 1885 D8 A5 FFFFFF74FSUB  DWORD PTR FFFFFF74[EBP]
02023: 188B D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = scale * fly0r - fly1r;
		fly0i = scale * fly0i - fly1i;
02025: 1891 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
02026: 1897 D8 0D 00000000 FMUL DWORD PTR .data+000004b4
02027: 189D D8 A5 FFFFFF78FSUB  DWORD PTR FFFFFF78[EBP]
02028: 18A3 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = scale * fly0i - fly1i;

		U0i = *(U0iP = (U0iP - NsameU4));
02030: 18A9 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
02031: 18AF 2B 85 FFFFFF0CSUB   EAX, DWORD PTR FFFFFF0C[EBP]
02032: 18B5 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
02033: 18BB 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02034: 18BD 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
U0i = *(U0iP = (U0iP - NsameU4));
		U0r = *(U0rP = (U0rP + NsameU4));		
02036: 18C0 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
02037: 18C6 03 85 FFFFFF0CADD   EAX, DWORD PTR FFFFFF0C[EBP]
02038: 18CC 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
02039: 18D2 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02040: 18D4 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
U0r = *(U0rP = (U0rP + NsameU4));		
		U1r = *(U1rP = (U1rP + NsameU2));
02042: 18D7 8B 85 FFFFFF50MOV   EAX, DWORD PTR FFFFFF50[EBP]
02043: 18DD 03 85 FFFFFF10ADD   EAX, DWORD PTR FFFFFF10[EBP]
02044: 18E3 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
02045: 18E9 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02046: 18EB 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
U1r = *(U1rP = (U1rP + NsameU2));
		U1i = *(U1iP = (U1iP - NsameU2));
02048: 18EE 8B 85 FFFFFF54MOV   EAX, DWORD PTR FFFFFF54[EBP]
02049: 18F4 2B 85 FFFFFF10SUB   EAX, DWORD PTR FFFFFF10[EBP]
02050: 18FA 89 85 FFFFFF54MOV   DWORD PTR FFFFFF54[EBP], EAX
02051: 1900 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02052: 1902 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
U1i = *(U1iP = (U1iP - NsameU2));
		if(stage&1)
02054: 1905 83 BD FFFFFF2400 CMP DWORD PTR FFFFFF24[EBP], 00000000
02055: 190C 74 08       JE      L0017
if(stage&1)
			U0r = -U0r;
02057: 190E D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
02058: 1911 D9 E0       FCHS    
02059: 1913 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
02060: 1916     L0017
U0r = -U0r;

		fly6r = t0r - U2r * fly4r;
02062: 1916 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02063: 1919 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02064: 191C D8 6D CC    FSUBR   DWORD PTR FFFFFFCC[EBP]
02065: 191F D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly6r = t0r - U2r * fly4r;
		fly6r = fly6r - U2i * fly4i;
02067: 1922 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02068: 1925 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02069: 1928 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
02070: 192B D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly6r = fly6r - U2i * fly4i;
		fly6i = t0i + U2i * fly4r;
02072: 192E D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02073: 1931 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02074: 1934 D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
02075: 1937 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly6i = t0i + U2i * fly4r;
		fly6i = fly6i - U2r * fly4i;
02077: 193A D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02078: 193D D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02079: 1940 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
02080: 1943 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly6i = fly6i - U2r * fly4i;
		t0r = scale * t0r - fly6r;
02082: 1946 D9 45 CC    FLD     DWORD PTR FFFFFFCC[EBP]
02083: 1949 D8 0D 00000000 FMUL DWORD PTR .data+000004b8
02084: 194F D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
02085: 1952 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = scale * t0r - fly6r;
		t0i = scale * t0i - fly6i;
02087: 1955 D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
02088: 1958 D8 0D 00000000 FMUL DWORD PTR .data+000004bc
02089: 195E D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
02090: 1961 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = scale * t0i - fly6i;

		fly3r = fly5r - U2i * fly2r;
02092: 1964 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02093: 196A D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02094: 196D D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
02095: 1970 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly5r - U2i * fly2r;
		fly3r = fly3r + U2r * fly2i;
02097: 1973 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02098: 1976 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02099: 1979 D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
02100: 197C D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = fly3r + U2r * fly2i;
		fly3i = fly5i - U2r * fly2r;
02102: 197F D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02103: 1985 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02104: 1988 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
02105: 198B D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly5i - U2r * fly2r;
		fly3i = fly3i - U2i * fly2i;
02107: 198E D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02108: 1991 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02109: 1994 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
02110: 1997 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly3i - U2i * fly2i;
		fly2r = scale * fly5r - fly3r;
02112: 199A D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
02113: 199D D8 0D 00000000 FMUL DWORD PTR .data+000004c0
02114: 19A3 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
02115: 19A6 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = scale * fly5r - fly3r;
		fly2i = scale * fly5i - fly3i;
02117: 19AC D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
02118: 19AF D8 0D 00000000 FMUL DWORD PTR .data+000004c4
02119: 19B5 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
02120: 19B8 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = scale * fly5i - fly3i;

		fly4r = t1r - U3r * fly0r;
02122: 19BB D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
02123: 19C1 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02124: 19C4 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
02125: 19C7 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = t1r - U3r * fly0r;
		fly4r = fly4r - U3i * fly0i;
02127: 19CA D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
02128: 19D0 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02129: 19D3 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
02130: 19D6 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly4r = fly4r - U3i * fly0i;
		fly4i = t1i + U3i * fly0r;
02132: 19D9 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
02133: 19DF D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02134: 19E2 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
02135: 19E5 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = t1i + U3i * fly0r;
		fly4i = fly4i - U3r * fly0i;
02137: 19E8 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
02138: 19EE D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02139: 19F1 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
02140: 19F4 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly4i = fly4i - U3r * fly0i;
		t1r = scale * t1r - fly4r;
02142: 19F7 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
02143: 19FA D8 0D 00000000 FMUL DWORD PTR .data+000004c8
02144: 1A00 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
02145: 1A03 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = scale * t1r - fly4r;
		t1i = scale * t1i - fly4i;
02147: 1A06 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
02148: 1A09 D8 0D 00000000 FMUL DWORD PTR .data+000004cc
02149: 1A0F D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
02150: 1A12 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = scale * t1i - fly4i;

		fly5r = fly7r + U3i * fly1r;
02152: 1A15 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02153: 1A1B D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02154: 1A1E D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
02155: 1A21 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly7r + U3i * fly1r;
		fly5r = fly5r - U3r * fly1i;
02157: 1A24 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02158: 1A2A D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02159: 1A2D D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
02160: 1A30 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly5r = fly5r - U3r * fly1i;
		fly5i = fly7i + U3r * fly1r;
02162: 1A33 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02163: 1A39 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02164: 1A3C D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
02165: 1A3F D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly7i + U3r * fly1r;
		fly5i = fly5i + U3i * fly1i;
02167: 1A42 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02168: 1A48 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02169: 1A4B D8 45 98    FADD    DWORD PTR FFFFFF98[EBP]
02170: 1A4E D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly5i = fly5i + U3i * fly1i;
		fly7r = scale * fly7r - fly5r;
02172: 1A51 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
02173: 1A54 D8 0D 00000000 FMUL DWORD PTR .data+000004d0
02174: 1A5A D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
02175: 1A5D D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly7r = scale * fly7r - fly5r;
		fly7i = scale * fly7i - fly5i;
02177: 1A60 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
02178: 1A63 D8 0D 00000000 FMUL DWORD PTR .data+000004d4
02179: 1A69 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
02180: 1A6C D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly7i = scale * fly7i - fly5i;

		*(fly0P + FlyOffsetA) = fly6r;
02182: 1A6F 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
02183: 1A72 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02184: 1A78 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
		*(fly0P + FlyOffsetAIm) = fly6i;
02186: 1A7B 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
02187: 1A7E 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02188: 1A84 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
		*(fly0P) = t0r;
02190: 1A87 8B 45 CC    MOV     EAX, DWORD PTR FFFFFFCC[EBP]
02191: 1A8A 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
		*(fly0P + 1) = t0i;
02193: 1A8C 8B 45 D0    MOV     EAX, DWORD PTR FFFFFFD0[EBP]
02194: 1A8F 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;

		U2r = *(U2rP = (U2rP + NsameU1));
02196: 1A92 8B 85 FFFFFF4CMOV   EAX, DWORD PTR FFFFFF4C[EBP]
02197: 1A98 03 85 FFFFFF14ADD   EAX, DWORD PTR FFFFFF14[EBP]
02198: 1A9E 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
02199: 1AA4 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02200: 1AA6 89 45 BC    MOV     DWORD PTR FFFFFFBC[EBP], EAX
U2r = *(U2rP = (U2rP + NsameU1));
		U2i = *(U2iP = (U2iP - NsameU1));
02202: 1AA9 8B 85 FFFFFF58MOV   EAX, DWORD PTR FFFFFF58[EBP]
02203: 1AAF 2B 85 FFFFFF14SUB   EAX, DWORD PTR FFFFFF14[EBP]
02204: 1AB5 89 85 FFFFFF58MOV   DWORD PTR FFFFFF58[EBP], EAX
02205: 1ABB 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02206: 1ABD 89 45 C0    MOV     DWORD PTR FFFFFFC0[EBP], EAX
U2i = *(U2iP = (U2iP - NsameU1));

		*(fly2P) = fly3r;
02208: 1AC0 8B 45 84    MOV     EAX, DWORD PTR FFFFFF84[EBP]
02209: 1AC3 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
		*(fly2P + 1) = fly3i;
02211: 1AC5 8B 45 88    MOV     EAX, DWORD PTR FFFFFF88[EBP]
02212: 1AC8 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
		*(fly2P + FlyOffsetA) = fly2r;
02214: 1ACB 8B 9D FFFFFF7CMOV   EBX, DWORD PTR FFFFFF7C[EBP]
02215: 1AD1 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02216: 1AD7 89 1C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EBX
*(fly2P + FlyOffsetA) = fly2r;
		*(fly2P + FlyOffsetAIm) = fly2i;
02218: 1ADA 8B 5D 80    MOV     EBX, DWORD PTR FFFFFF80[EBP]
02219: 1ADD 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02220: 1AE3 89 1C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EBX
*(fly2P + FlyOffsetAIm) = fly2i;
		*(fly1P + FlyOffsetA) = fly4r;
02222: 1AE6 8B 4D 8C    MOV     ECX, DWORD PTR FFFFFF8C[EBP]
02223: 1AE9 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02224: 1AEF 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetA) = fly4r;
		*(fly1P + FlyOffsetAIm) = fly4i;
02226: 1AF2 8B 4D 90    MOV     ECX, DWORD PTR FFFFFF90[EBP]
02227: 1AF5 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02228: 1AFB 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetAIm) = fly4i;
		*(fly1P) = t1r;
02230: 1AFE 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
02231: 1B01 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
		*(fly1P + 1) = t1i;
02233: 1B03 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
02234: 1B06 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;

		U3r = *( U2rP + U3offset);
02236: 1B09 8B 8D FFFFFF48MOV   ECX, DWORD PTR FFFFFF48[EBP]
02237: 1B0F 8B 85 FFFFFF4CMOV   EAX, DWORD PTR FFFFFF4C[EBP]
02238: 1B15 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
02239: 1B18 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
U3r = *( U2rP + U3offset);
		U3i = *( U2iP - U3offset);
02241: 1B1B 8B 85 FFFFFF58MOV   EAX, DWORD PTR FFFFFF58[EBP]
02242: 1B21 2B 85 FFFFFF1CSUB   EAX, DWORD PTR FFFFFF1C[EBP]
02243: 1B27 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02244: 1B29 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U3i = *( U2iP - U3offset);

		*(fly3P + FlyOffsetA) = fly5r;
02246: 1B2C 8B 55 94    MOV     EDX, DWORD PTR FFFFFF94[EBP]
02247: 1B2F 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02248: 1B35 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetA) = fly5r;
		*(fly3P + FlyOffsetAIm) = fly5i;
02250: 1B38 8B 55 98    MOV     EDX, DWORD PTR FFFFFF98[EBP]
02251: 1B3B 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02252: 1B41 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetAIm) = fly5i;
		*(fly3P) = fly7r;
02254: 1B44 8B 45 A4    MOV     EAX, DWORD PTR FFFFFFA4[EBP]
02255: 1B47 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
		*(fly3P + 1) = fly7i;
02257: 1B49 8B 45 A8    MOV     EAX, DWORD PTR FFFFFFA8[EBP]
02258: 1B4C 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

		IOP = IOP + 2;
02260: 1B4F 83 85 FFFFFF3008 ADD DWORD PTR FFFFFF30[EBP], 00000008
IOP = IOP + 2;
		fly0P = IOP;
02262: 1B56 8B 9D FFFFFF30MOV   EBX, DWORD PTR FFFFFF30[EBP]
fly0P = IOP;
		fly1P = (IOP+Flyinc);
02264: 1B5C 89 DA       MOV     EDX, EBX
02265: 1B5E 03 95 FFFFFF04ADD   EDX, DWORD PTR FFFFFF04[EBP]
02266: 1B64             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
02268: 1B64 89 D0       MOV     EAX, EDX
02269: 1B66 03 85 FFFFFF04ADD   EAX, DWORD PTR FFFFFF04[EBP]
02270: 1B6C             NOOP    
02271: 1B6C 89 C1       MOV     ECX, EAX
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
02273: 1B6E 89 CE       MOV     ESI, ECX
02274: 1B70 03 B5 FFFFFF04ADD   ESI, DWORD PTR FFFFFF04[EBP]
02275: 1B76             NOOP    
fly3P = (fly2P+Flyinc);
	};
02277: 1B76 FF 8D FFFFFF08DEC   DWORD PTR FFFFFF08[EBP]
02278: 1B7C     L0013
02279: 1B7C 83 BD FFFFFF0800 CMP DWORD PTR FFFFFF08[EBP], 00000000
02280: 1B83 0F 8F FFFFF374 JG   L0014
};
	NsameU4 = -NsameU4;
02282: 1B89 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
02283: 1B8F F7 D8       NEG     EAX
02284: 1B91 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
NsameU4 = -NsameU4;

	if(stage&1){
02286: 1B97 83 BD FFFFFF3400 CMP DWORD PTR FFFFFF34[EBP], 00000000
02287: 1B9E 74 5E       JE      L0018
if(stage&1){
		LoopN >>= 3;
02289: 1BA0 C1 BD FFFFFF3803 SAR DWORD PTR FFFFFF38[EBP], 00000003
LoopN >>= 3;
		NsameU1 >>= 3;
02291: 1BA7 C1 BD FFFFFF2003 SAR DWORD PTR FFFFFF20[EBP], 00000003
NsameU1 >>= 3;
		NsameU2 >>= 3;
02293: 1BAE C1 BD FFFFFF1803 SAR DWORD PTR FFFFFF18[EBP], 00000003
NsameU2 >>= 3;
		NsameU4 >>= 3;
02295: 1BB5 C1 BD FFFFFF3C03 SAR DWORD PTR FFFFFF3C[EBP], 00000003
NsameU4 >>= 3;
		NdiffU <<= 3;
02297: 1BBC C1 A5 FFFFFF5C03 SHL DWORD PTR FFFFFF5C[EBP], 00000003
NdiffU <<= 3;
		Flyinc = Flyinc << 3;
02299: 1BC3 C1 A5 FFFFFF4403 SHL DWORD PTR FFFFFF44[EBP], 00000003
Flyinc = Flyinc << 3;
		FlyOffsetA <<= 3;
02301: 1BCA C1 A5 FFFFFED803 SHL DWORD PTR FFFFFED8[EBP], 00000003
FlyOffsetA <<= 3;
		FlyOffsetB <<= 3;
02303: 1BD1 C1 A5 FFFFFEEC03 SHL DWORD PTR FFFFFEEC[EBP], 00000003
FlyOffsetB <<= 3;
		FlyOffsetAIm =  FlyOffsetA + 1;
02305: 1BD8 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02306: 1BDE 89 85 FFFFFECCMOV   DWORD PTR FFFFFECC[EBP], EAX
02307: 1BE4 83 85 FFFFFECC01 ADD DWORD PTR FFFFFECC[EBP], 00000001
02308: 1BEB             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
		FlyOffsetBIm =  FlyOffsetB + 1;
02310: 1BEB 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
02311: 1BF1 89 85 FFFFFEF4MOV   DWORD PTR FFFFFEF4[EBP], EAX
02312: 1BF7 83 85 FFFFFEF401 ADD DWORD PTR FFFFFEF4[EBP], 00000001
02313: 1BFE             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
	}
02315: 1BFE     L0018
}
}
02317: 1BFE FF 8D FFFFFF40DEC   DWORD PTR FFFFFF40[EBP]
02318: 1C04     L0010
02319: 1C04 83 BD FFFFFF4000 CMP DWORD PTR FFFFFF40[EBP], 00000000
02320: 1C0B 0F 8F FFFFF152 JG   L0011
}

/*	Finish RFFT		*/
M=M+1;
02322: 1C11 83 45 0C 01 ADD     DWORD PTR 0000000C[EBP], 00000001
M=M+1;

FlyOffsetA = Ntbl[M] * 2/4;
02324: 1C15 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
02328: 1C18 B9 00000004 MOV     ECX, 00000004
02325: 1C1D 8B 34 85 00000000 MOV ESI, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
02326: 1C24 D1 E6       SHL     ESI, 00000001
02327: 1C26             NOOP    
02329: 1C26 89 F0       MOV     EAX, ESI
02330: 1C28 99          CDQ     
02331: 1C29 F7 F9       IDIV    ECX
02332: 1C2B 89 C2       MOV     EDX, EAX
02333: 1C2D             NOOP    
02334: 1C2D 89 95 FFFFFED8MOV   DWORD PTR FFFFFED8[EBP], EDX
FlyOffsetA = Ntbl[M] * 2/4;
FlyOffsetAIm = Ntbl[M] * 2/4 + 1;
02336: 1C33 89 95 FFFFFECCMOV   DWORD PTR FFFFFECC[EBP], EDX
02337: 1C39 83 85 FFFFFECC01 ADD DWORD PTR FFFFFECC[EBP], 00000001
02338: 1C40             NOOP    
FlyOffsetAIm = Ntbl[M] * 2/4 + 1;

IOP = ioptr;
02340: 1C40 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
02343: 1C43 89 D3       MOV     EBX, EDX
02341: 1C45 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
IOP = ioptr;

fly0P = (IOP + Ntbl[M]*2/4);
02344: 1C4B C1 E3 02    SHL     EBX, 00000002
02348: 1C4E B9 00000008 MOV     ECX, 00000008
02345: 1C53 01 C3       ADD     EBX, EAX
02346: 1C55             NOOP    
fly0P = (IOP + Ntbl[M]*2/4);
fly1P = (IOP + Ntbl[M]*2/8);
02349: 1C55 89 F0       MOV     EAX, ESI
02350: 1C57 99          CDQ     
02351: 1C58 F7 F9       IDIV    ECX
02352: 1C5A 89 C2       MOV     EDX, EAX
02357: 1C5C 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
02353: 1C5F C1 E2 02    SHL     EDX, 00000002
02358: 1C62 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
02354: 1C69 03 55 08    ADD     EDX, DWORD PTR 00000008[EBP]
02355: 1C6C             NOOP    
fly1P = (IOP + Ntbl[M]*2/8);

U0rP = &Utbl[Ntbl[M-3]];
02359: 1C6C 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
02360: 1C72 C1 A5 FFFFFF2802 SHL DWORD PTR FFFFFF28[EBP], 00000002
02361: 1C79 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
02362: 1C7F 03 45 14    ADD     EAX, DWORD PTR 00000014[EBP]
02363: 1C82 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
02364: 1C88             NOOP    
U0rP = &Utbl[Ntbl[M-3]];

U0r =  *U0rP,
02366: 1C88 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
02367: 1C8E 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02368: 1C90 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
02369: 1C93 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
02370: 1C96 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02371: 1C98 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
U0r =  *U0rP,

fly0r = *(IOP);
fly0i = *(IOP + 1);
02373: 1C9E 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
02374: 1CA1 8B 40 04    MOV     EAX, DWORD PTR 00000004[EAX]
02375: 1CA4 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(IOP + 1);
fly1r = *(fly0P);
02377: 1CAA 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
02378: 1CAC 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly0P);
fly1i = *(fly0P + 1);
02380: 1CB2 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
02381: 1CB5 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly1i = *(fly0P + 1);
fly2r = *(fly1P);
02383: 1CBB 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
02384: 1CBD 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly1P);
fly2i = *(fly1P + 1);
02386: 1CC3 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
02387: 1CC6 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly1P + 1);
fly3r = *(fly1P + FlyOffsetA);
02389: 1CC9 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02390: 1CCF 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02391: 1CD2 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly1P + FlyOffsetA);
fly3i = *(fly1P + FlyOffsetAIm);
02393: 1CD5 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02394: 1CDB 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02395: 1CDE 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly1P + FlyOffsetAIm);

	t0r = scale * fly0r + scale * fly0i;    /* compute Re(x[0]) */
02397: 1CE1 D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
02398: 1CE7 D8 0D 00000000 FMUL DWORD PTR .data+000004d8
02399: 1CED D9 55 E4    FST     DWORD PTR FFFFFFE4[EBP]
02400: 1CF0 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
02401: 1CF6 D8 0D 00000000 FMUL DWORD PTR .data+000004dc
02402: 1CFC D9 55 E8    FST     DWORD PTR FFFFFFE8[EBP]
02403: 1CFF DE C1       FADDP   ST(1), ST
02404: 1D01 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = scale * fly0r + scale * fly0i;    /* compute Re(x[0]) */
	t0i = scale * fly0r - scale * fly0i;    /* compute Re(x[N/2]) */
02406: 1D04 D9 45 E4    FLD     DWORD PTR FFFFFFE4[EBP]
02407: 1D07 D8 6D E8    FSUBR   DWORD PTR FFFFFFE8[EBP]
02408: 1D0A D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = scale * fly0r - scale * fly0i;    /* compute Re(x[N/2]) */
	t1r = scale * fly1r;
02410: 1D0D D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02411: 1D13 D8 0D 00000000 FMUL DWORD PTR .data+000004e0
02412: 1D19 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = scale * fly1r;
	t1i = -scale * fly1i;
02414: 1D1C D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02415: 1D22 D9 05 00000000 FLD  DWORD PTR .data+000004e4
02416: 1D28 D9 E0       FCHS    
02417: 1D2A DE C9       FMULP   ST(1), ST
02418: 1D2C D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = -scale * fly1i;

	fly0r = fly2r + fly3r;
02420: 1D2F D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02421: 1D32 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
02422: 1D38 D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly2r + fly3r;
	fly0i = fly2i - fly3i;
02424: 1D3E D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02425: 1D41 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
02426: 1D44 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly2i - fly3i;
	fly1r = fly2i + fly3i;
02428: 1D4A D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02429: 1D4D D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
02430: 1D50 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly2i + fly3i;
	fly1i = fly3r - fly2r;
02432: 1D56 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02433: 1D5C D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
02434: 1D5F D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly3r - fly2r;

	fly2r = fly0r + U0r * fly1r;
02436: 1D65 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02437: 1D6B D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
02438: 1D6E D9 55 EC    FST     DWORD PTR FFFFFFEC[EBP]
02439: 1D71 D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
02440: 1D77 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly0r + U0r * fly1r;
	fly2r = fly2r + U0r * fly1i;
02442: 1D7D D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02443: 1D83 D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
02444: 1D86 D9 55 F0    FST     DWORD PTR FFFFFFF0[EBP]
02445: 1D89 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
02446: 1D8F D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly2r + U0r * fly1i;
	fly2i = fly0i - U0r * fly1r;
02448: 1D95 D9 45 EC    FLD     DWORD PTR FFFFFFEC[EBP]
02449: 1D98 D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
02450: 1D9E D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly0i - U0r * fly1r;
	fly2i = fly2i + U0r * fly1i;
02452: 1DA1 D9 45 F0    FLD     DWORD PTR FFFFFFF0[EBP]
02453: 1DA4 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
02454: 1DA7 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly2i + U0r * fly1i;
	fly3r = scale * fly0r - fly2r;
02456: 1DAA D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
02457: 1DB0 D8 0D 00000000 FMUL DWORD PTR .data+000004e8
02458: 1DB6 D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
02459: 1DBC D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = scale * fly0r - fly2r;
	fly3i = fly2i - scale * fly0i;
02461: 1DBF D9 85 FFFFFF70FLD   DWORD PTR FFFFFF70[EBP]
02462: 1DC5 D8 0D 00000000 FMUL DWORD PTR .data+000004ec
02463: 1DCB D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
02464: 1DCE D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly2i - scale * fly0i;

*(IOP) = t0r;
02466: 1DD1 8B 4D CC    MOV     ECX, DWORD PTR FFFFFFCC[EBP]
02467: 1DD4 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
02468: 1DD7 89 08       MOV     DWORD PTR 00000000[EAX], ECX
*(IOP) = t0r;
*(IOP + 1) = t0i;
02470: 1DD9 8B 4D D0    MOV     ECX, DWORD PTR FFFFFFD0[EBP]
02471: 1DDC 89 48 04    MOV     DWORD PTR 00000004[EAX], ECX
*(IOP + 1) = t0i;
*(fly0P) = t1r;
02473: 1DDF 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
02474: 1DE2 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t1r;
*(fly0P + 1) = t1i;
02476: 1DE4 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
02477: 1DE7 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t1i;
*(fly1P) = fly2r;
02479: 1DEA 8B 85 FFFFFF7CMOV   EAX, DWORD PTR FFFFFF7C[EBP]
02480: 1DF0 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = fly2r;
*(fly1P + 1) = fly2i;
02482: 1DF2 8B 45 80    MOV     EAX, DWORD PTR FFFFFF80[EBP]
02483: 1DF5 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = fly2i;
*(fly1P + FlyOffsetA) = fly3r;
02485: 1DF8 8B 4D 84    MOV     ECX, DWORD PTR FFFFFF84[EBP]
02486: 1DFB 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02487: 1E01 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetA) = fly3r;
*(fly1P + FlyOffsetAIm) = fly3i;
02489: 1E04 8B 4D 88    MOV     ECX, DWORD PTR FFFFFF88[EBP]
02490: 1E07 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02491: 1E0D 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetAIm) = fly3i;

U0rP = &Utbl[1];
02493: 1E10 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
02494: 1E13 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
02495: 1E19 83 85 FFFFFF2804 ADD DWORD PTR FFFFFF28[EBP], 00000004
02496: 1E20             NOOP    
U0rP = &Utbl[1];
U0iP = &Utbl[Ntbl[M-2]-1];
02498: 1E20 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
02499: 1E23 8B 34 85 FFFFFFF8 MOV ESI, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF8[EAX*4]
02500: 1E2A 83 C6 FF    ADD     ESI, FFFFFFFF
02501: 1E2D             NOOP    
02502: 1E2D 89 F2       MOV     EDX, ESI
02503: 1E2F C1 E2 02    SHL     EDX, 00000002
02504: 1E32 03 55 14    ADD     EDX, DWORD PTR 00000014[EBP]
02505: 1E35             NOOP    
02506: 1E35 89 95 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EDX
U0iP = &Utbl[Ntbl[M-2]-1];

U0r =  *U0rP,
02508: 1E3B 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
02509: 1E3E 8B 40 04    MOV     EAX, DWORD PTR 00000004[EAX]
02510: 1E41 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
02511: 1E44 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
02518: 1E46 89 F2       MOV     EDX, ESI
02512: 1E48 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
U0r =  *U0rP,
U0i =  *U0iP;
	
fly0P = (IOP + 2);
02514: 1E4B 8B 5D 08    MOV     EBX, DWORD PTR 00000008[EBP]
02523: 1E4E 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
02515: 1E51 83 C3 08    ADD     EBX, 00000008
02516: 1E54             NOOP    
fly0P = (IOP + 2);
fly1P = (IOP + (Ntbl[M-2]-1)*2);
02519: 1E54 C1 E2 03    SHL     EDX, 00000003
02524: 1E57 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
02520: 1E5E 03 55 08    ADD     EDX, DWORD PTR 00000008[EBP]
02521: 1E61             NOOP    
fly1P = (IOP + (Ntbl[M-2]-1)*2);

				/* Butterflys */
				/*
		f0	-	t0	-	-	f2
		f1	-	t1	-U0	-	f3
		f2	-	f0	-	-	t0
		f3	-	f1	-U0a-	t1
				*/

for (diffUcnt = Ntbl[M-3]-1; diffUcnt > 0 ; diffUcnt--){
02525: 1E61 89 85 FFFFFF08MOV   DWORD PTR FFFFFF08[EBP], EAX
02526: 1E67 83 85 FFFFFF08FF ADD DWORD PTR FFFFFF08[EBP], FFFFFFFF
02527: 1E6E             NOOP    
02528: 1E6E E9 000001F6 JMP     L0019
02529: 1E73     L001A
for (diffUcnt = Ntbl[M-3]-1; diffUcnt > 0 ; diffUcnt--){

	fly0r = *(fly0P);
02531: 1E73 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
02532: 1E75 89 85 FFFFFF6CMOV   DWORD PTR FFFFFF6C[EBP], EAX
fly0r = *(fly0P);
	fly0i = *(fly0P + 1);
02534: 1E7B 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
02535: 1E7E 89 85 FFFFFF70MOV   DWORD PTR FFFFFF70[EBP], EAX
fly0i = *(fly0P + 1);
	fly1r = *(fly1P + FlyOffsetA);
02537: 1E84 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02538: 1E8A 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02539: 1E8D 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly1r = *(fly1P + FlyOffsetA);
	fly1i = *(fly1P + FlyOffsetAIm);
02541: 1E93 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02542: 1E99 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02543: 1E9C 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly1i = *(fly1P + FlyOffsetAIm);
	fly2r = *(fly1P);
02545: 1EA2 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
02546: 1EA4 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly2r = *(fly1P);
	fly2i = *(fly1P + 1);
02548: 1EAA 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
02549: 1EAD 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly2i = *(fly1P + 1);
	fly3r = *(fly0P + FlyOffsetA);
02551: 1EB0 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02552: 1EB6 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
02553: 1EB9 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly3r = *(fly0P + FlyOffsetA);
	fly3i = *(fly0P + FlyOffsetAIm);
02555: 1EBC 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02556: 1EC2 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
02557: 1EC5 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly3i = *(fly0P + FlyOffsetAIm);

	t0r = fly0r + fly1r;
02559: 1EC8 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02560: 1ECE D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
02561: 1ED4 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = fly0r + fly1r;
	t0i = fly0i - fly1i;
02563: 1ED7 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02564: 1EDD D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
02565: 1EE3 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = fly0i - fly1i;
	t1r = fly0i + fly1i;
02567: 1EE6 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02568: 1EEC D8 85 FFFFFF70FADD  DWORD PTR FFFFFF70[EBP]
02569: 1EF2 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t1r = fly0i + fly1i;
	t1i = fly1r - fly0r;
02571: 1EF5 D9 85 FFFFFF6CFLD   DWORD PTR FFFFFF6C[EBP]
02572: 1EFB D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
02573: 1F01 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t1i = fly1r - fly0r;

	fly0r = fly2r + fly3r;
02575: 1F04 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02576: 1F07 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
02577: 1F0D D9 9D FFFFFF6CFSTP  DWORD PTR FFFFFF6C[EBP]
fly0r = fly2r + fly3r;
	fly0i = fly2i - fly3i;
02579: 1F13 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02580: 1F16 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
02581: 1F19 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
fly0i = fly2i - fly3i;
	fly1r = fly2i + fly3i;
02583: 1F1F D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02584: 1F22 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
02585: 1F25 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly1r = fly2i + fly3i;
	fly1i = fly3r - fly2r;
02587: 1F2B D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02588: 1F31 D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
02589: 1F34 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly1i = fly3r - fly2r;

	fly2r = t0r + U0r * t1r;
02591: 1F3A D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
02592: 1F3D D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
02593: 1F40 D8 45 CC    FADD    DWORD PTR FFFFFFCC[EBP]
02594: 1F43 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = t0r + U0r * t1r;
	fly2r = fly2r + U0i * t1i;
02596: 1F49 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
02597: 1F4C D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
02598: 1F4F D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
02599: 1F55 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly2r = fly2r + U0i * t1i;
	fly2i = t0i - U0i * t1r;
02601: 1F5B D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
02602: 1F5E D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
02603: 1F61 D8 6D D0    FSUBR   DWORD PTR FFFFFFD0[EBP]
02604: 1F64 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = t0i - U0i * t1r;
	fly2i = fly2i + U0r * t1i;
02606: 1F67 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
02607: 1F6A D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
02608: 1F6D D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
02609: 1F70 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly2i = fly2i + U0r * t1i;
	fly3r = scale * t0r - fly2r;
02611: 1F73 D9 45 CC    FLD     DWORD PTR FFFFFFCC[EBP]
02612: 1F76 D8 0D 00000000 FMUL DWORD PTR .data+000004f0
02613: 1F7C D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
02614: 1F82 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly3r = scale * t0r - fly2r;
	fly3i = fly2i - scale * t0i;
02616: 1F85 D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
02617: 1F88 D8 0D 00000000 FMUL DWORD PTR .data+000004f4
02618: 1F8E D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
02619: 1F91 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly3i = fly2i - scale * t0i;

	t0r = fly0r + U0i * fly1r;
02621: 1F94 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02622: 1F9A D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
02623: 1F9D D8 85 FFFFFF6CFADD  DWORD PTR FFFFFF6C[EBP]
02624: 1FA3 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = fly0r + U0i * fly1r;
	t0r = t0r + U0r * fly1i;
02626: 1FA6 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02627: 1FAC D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
02628: 1FAF D8 45 CC    FADD    DWORD PTR FFFFFFCC[EBP]
02629: 1FB2 D9 5D CC    FSTP    DWORD PTR FFFFFFCC[EBP]
t0r = t0r + U0r * fly1i;
	t0i = fly0i - U0r * fly1r;
02631: 1FB5 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02632: 1FBB D8 4D AC    FMUL    DWORD PTR FFFFFFAC[EBP]
02633: 1FBE D8 AD FFFFFF70FSUBR DWORD PTR FFFFFF70[EBP]
02634: 1FC4 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = fly0i - U0r * fly1r;
	t0i = t0i + U0i * fly1i;
02636: 1FC7 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02637: 1FCD D8 4D B0    FMUL    DWORD PTR FFFFFFB0[EBP]
02638: 1FD0 D8 45 D0    FADD    DWORD PTR FFFFFFD0[EBP]
02639: 1FD3 D9 5D D0    FSTP    DWORD PTR FFFFFFD0[EBP]
t0i = t0i + U0i * fly1i;
	t1r = scale * fly0r - t0r;
	t1i = t0i - scale * fly0i;

	*(fly0P) = fly2r;
02641: 1FD6 8B 85 FFFFFF7CMOV   EAX, DWORD PTR FFFFFF7C[EBP]
02642: 1FDC 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = fly2r;
	*(fly0P + 1) = fly2i;
02644: 1FDE 8B 45 80    MOV     EAX, DWORD PTR FFFFFF80[EBP]
02645: 1FE1 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = fly2i;
	*(fly1P + FlyOffsetA) = fly3r;
02647: 1FE4 8B 4D 84    MOV     ECX, DWORD PTR FFFFFF84[EBP]
02648: 1FE7 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02649: 1FED 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetA) = fly3r;
	*(fly1P + FlyOffsetAIm) = fly3i;
02651: 1FF0 8B 4D 88    MOV     ECX, DWORD PTR FFFFFF88[EBP]
02652: 1FF3 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02653: 1FF9 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetAIm) = fly3i;

	U0r = *(U0rP = (U0rP + 1));		
02655: 1FFC 83 85 FFFFFF2804 ADD DWORD PTR FFFFFF28[EBP], 00000004
02656: 2003 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
02657: 2009 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02658: 200B 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
U0r = *(U0rP = (U0rP + 1));		
	U0i = *(U0iP = (U0iP - 1));
02660: 200E 83 85 FFFFFF2CFC ADD DWORD PTR FFFFFF2C[EBP], FFFFFFFC
02661: 2015 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
02662: 201B 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02663: 201D 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
U0i = *(U0iP = (U0iP - 1));

	*(fly1P) = t0r;
02665: 2020 8B 45 CC    MOV     EAX, DWORD PTR FFFFFFCC[EBP]
02666: 2023 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t0r;
	*(fly1P + 1) = t0i;
02668: 2025 8B 45 D0    MOV     EAX, DWORD PTR FFFFFFD0[EBP]
02669: 2028 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t0i;
	*(fly0P + FlyOffsetA) = t1r;
02671: 202B D9 05 00000000 FLD  DWORD PTR .data+000004f8
02672: 2031 D8 8D FFFFFF6CFMUL  DWORD PTR FFFFFF6C[EBP]
02673: 2037 D8 65 CC    FSUB    DWORD PTR FFFFFFCC[EBP]
02674: 203A 8B 85 FFFFFED8MOV   EAX, DWORD PTR FFFFFED8[EBP]
02675: 2040 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P + FlyOffsetA) = t1r;
	*(fly0P + FlyOffsetAIm) = t1i;
02677: 2043 D9 45 D0    FLD     DWORD PTR FFFFFFD0[EBP]
02678: 2046 D9 05 00000000 FLD  DWORD PTR .data+000004fc
02679: 204C D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
02680: 2052 DE E9       FSUBP   ST(1), ST
02681: 2054 8B 85 FFFFFECCMOV   EAX, DWORD PTR FFFFFECC[EBP]
02682: 205A D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P + FlyOffsetAIm) = t1i;

	fly0P += 2;
02684: 205D 83 C3 08    ADD     EBX, 00000008
fly0P += 2;
	fly1P -= 2;
02686: 2060 83 EA 08    SUB     EDX, 00000008
fly1P -= 2;
};
02688: 2063 FF 8D FFFFFF08DEC   DWORD PTR FFFFFF08[EBP]
02689: 2069     L0019
02690: 2069 83 BD FFFFFF0800 CMP DWORD PTR FFFFFF08[EBP], 00000000
02691: 2070 0F 8F FFFFFDFD JG   L001A
};

ioptr += Ntbl[M];
02693: 2076 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
02694: 2079 8B 04 85 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
02695: 2080 C1 E0 02    SHL     EAX, 00000002
02696: 2083 01 45 08    ADD     DWORD PTR 00000008[EBP], EAX
ioptr += Ntbl[M];
}
02698: 2086 FF 4D 10    DEC     DWORD PTR 00000010[EBP]
02699: 2089     L0001
02700: 2089 83 7D 10 00 CMP     DWORD PTR 00000010[EBP], 00000000
02701: 208D 0F 8F FFFFDFD6 JG   L0002
}
}
02703: 2093     L0000
02704: 2093 8D 65 F4    LEA     ESP, DWORD PTR FFFFFFF4[EBP]
02705: 2096 5F          POP     EDI
02706: 2097 5E          POP     ESI
02707: 2098 5B          POP     EBX
02708: 2099 5D          POP     EBP
02709: 209A C3          RETN    

Function: ?riffts@@YAXPAMJJ0@Z
}

void riffts(float *ioptr, long M, long Rows, float *Utbl){
00002: 0000 55          PUSH    EBP
00003: 0001 89 E5       MOV     EBP, ESP
00004: 0003 53          PUSH    EBX
00005: 0004 56          PUSH    ESI
00006: 0005 57          PUSH    EDI
00007: 0006 81 EC 00000130 SUB  ESP, 00000130
{
/* Compute in-place real ifft on the rows of the input array	*/
/* INPUTS */
/* M = log2 of fft size	*/
/* *ioptr = input data array in the following order	*/
/* Re(x[0]), Re(x[N/2]), Re(x[1]), Im(x[1]), Re(x[2]), Im(x[2]), ... Re(x[N/2-1]), Im(x[N/2-1]). */
/* *Utbl = cosine table	*/
/* Rows = number of rows in ioptr array (use Rows of 1 if ioptr is a 1 dimensional array)	*/
/* OUTPUTS */
/* *ioptr = real output data array	*/

long 	Flyinc;
long	FlyOffsetA;
long	FlyOffsetAIm;
long	FlyOffsetB;
long	FlyOffsetBIm;
long 	NsameU1;
long 	NsameU2;
long 	NsameU4;
long 	diffUcnt;
long 	LoopCnt;
float	scale;
float	fly0r;
float	fly0i;
float	fly1r;
float	fly1i;
float	fly2r;
float	fly2i;
float	fly3r;
float	fly3i;
float	fly4r;
float	fly4i;
float	fly5r;
float	fly5i;
float	fly6r;
float	fly6i;
float	fly7r;
float	fly7i;
float	U0r;
float	U0i;
float	U1r;
float	U1i;
float	U2r;
float	U2i;
float	U3r;
float	U3i;
float	t0r;
float	t0i;
float	t1r;
float	t1i;

float	*fly0P;
float	*fly1P;
float	*fly2P;
float	*fly3P;

float	*U0rP;
float	*U0iP;
float	*U1rP;
float	*U1iP;
float	*U2rP;
float	*U2iP;
float	*IOP;
long	U3offset;

long 	stage;
long 	NdiffU;
long 	LoopN;

const long BRshift = MAXMROOT - ((M-1)>>1);		/* for RIFFT */
00009: 000C 8B 5D 0C    MOV     EBX, DWORD PTR 0000000C[EBP]
00013: 000F C7 85 FFFFFF5C00000009 MOV DWORD PTR FFFFFF5C[EBP], 00000009
00010: 0019 83 C3 FF    ADD     EBX, FFFFFFFF
00011: 001C D1 FB       SAR     EBX, 00000001
00012: 001E             NOOP    
00014: 001E 29 9D FFFFFF5CSUB   DWORD PTR FFFFFF5C[EBP], EBX
00015: 0024             NOOP    
const long BRshift = MAXMROOT - ((M-1)>>1);		/* for RIFFT */
const long Nrems2 = Ntbl[(M-1)-((M-1)>>1)+1];		/* for RIFFT */
00017: 0024 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00018: 0027 83 C2 00    ADD     EDX, 00000000
00019: 002A 29 DA       SUB     EDX, EBX
00020: 002C 8B 04 95 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EDX*4]
00021: 0033 89 85 FFFFFF64MOV   DWORD PTR FFFFFF64[EBP], EAX
const long Nrems2 = Ntbl[(M-1)-((M-1)>>1)+1];		/* for RIFFT */
const long Nroot_1_ColInc = (Ntbl[(M-1)-1]-Ntbl[(M-1)-((M-1)>>1)])*2; /* for RIFFT */
00023: 0039 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00026: 003C 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00024: 003F 83 C2 FF    ADD     EDX, FFFFFFFF
00027: 0042 8B 04 8D FFFFFFF8 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF8[ECX*4]
00025: 0049 29 DA       SUB     EDX, EBX
00028: 004B 89 85 FFFFFF60MOV   DWORD PTR FFFFFF60[EBP], EAX
00029: 0051 2B 04 95 00000000 SUB EAX, DWORD PTR ?Ntbl@@3PBJB[EDX*4]
00030: 0058 89 85 FFFFFF60MOV   DWORD PTR FFFFFF60[EBP], EAX
00031: 005E D1 A5 FFFFFF60SHL   DWORD PTR FFFFFF60[EBP], 00000001
00032: 0064             NOOP    
const long Nroot_1_ColInc = (Ntbl[(M-1)-1]-Ntbl[(M-1)-((M-1)>>1)])*2; /* for RIFFT */

for (;Rows>0;Rows--){
00034: 0064 E9 00001EE3 JMP     L0001
00035: 0069     L0002
for (;Rows>0;Rows--){

/*	Start RIFFT		*/

FlyOffsetA = Ntbl[M] * 2/4;
00037: 0069 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00041: 006C B9 00000004 MOV     ECX, 00000004
00038: 0071 8B 34 85 00000000 MOV ESI, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
00039: 0078 D1 E6       SHL     ESI, 00000001
00040: 007A             NOOP    
00042: 007A 89 F0       MOV     EAX, ESI
00043: 007C 99          CDQ     
00044: 007D F7 F9       IDIV    ECX
00045: 007F 89 C2       MOV     EDX, EAX
00046: 0081             NOOP    
00047: 0081 89 95 FFFFFED4MOV   DWORD PTR FFFFFED4[EBP], EDX
FlyOffsetA = Ntbl[M] * 2/4;
FlyOffsetAIm = Ntbl[M] * 2/4 + 1;
00049: 0087 89 95 FFFFFEC8MOV   DWORD PTR FFFFFEC8[EBP], EDX
00050: 008D 83 85 FFFFFEC801 ADD DWORD PTR FFFFFEC8[EBP], 00000001
00051: 0094             NOOP    
FlyOffsetAIm = Ntbl[M] * 2/4 + 1;

IOP = ioptr;
00053: 0094 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00056: 0097 89 D3       MOV     EBX, EDX
00054: 0099 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
IOP = ioptr;

fly0P = (IOP + Ntbl[M]*2/4);
00057: 009F C1 E3 02    SHL     EBX, 00000002
00061: 00A2 B9 00000008 MOV     ECX, 00000008
00058: 00A7 01 C3       ADD     EBX, EAX
00059: 00A9             NOOP    
fly0P = (IOP + Ntbl[M]*2/4);
fly1P = (IOP + Ntbl[M]*2/8);
00062: 00A9 89 F0       MOV     EAX, ESI
00063: 00AB 99          CDQ     
00064: 00AC F7 F9       IDIV    ECX
00065: 00AE 89 C2       MOV     EDX, EAX
00070: 00B0 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00066: 00B3 C1 E2 02    SHL     EDX, 00000002
00071: 00B6 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
00067: 00BD 03 55 08    ADD     EDX, DWORD PTR 00000008[EBP]
00068: 00C0             NOOP    
fly1P = (IOP + Ntbl[M]*2/8);

U0rP = &Utbl[Ntbl[M-3]];
00072: 00C0 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
00073: 00C6 C1 A5 FFFFFF2002 SHL DWORD PTR FFFFFF20[EBP], 00000002
00074: 00CD 8B 85 FFFFFF20MOV   EAX, DWORD PTR FFFFFF20[EBP]
00075: 00D3 03 45 14    ADD     EAX, DWORD PTR 00000014[EBP]
00076: 00D6 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
00077: 00DC             NOOP    
U0rP = &Utbl[Ntbl[M-3]];

U0r =  *U0rP,
00079: 00DC 8B 85 FFFFFF20MOV   EAX, DWORD PTR FFFFFF20[EBP]
00080: 00E2 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
00081: 00E4 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
00082: 00E7 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00083: 00EA 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
00084: 00EC 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
U0r =  *U0rP,

fly0r = *(IOP);
fly0i = *(IOP + 1);
00086: 00F2 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00087: 00F5 8B 40 04    MOV     EAX, DWORD PTR 00000004[EAX]
00088: 00F8 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(IOP + 1);
fly1r = *(fly0P);
00090: 00FE 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00091: 0100 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly0P);
fly1i = *(fly0P + 1);
00093: 0106 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00094: 0109 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly1i = *(fly0P + 1);
fly2r = *(fly1P);
00096: 010C 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00097: 010E 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly1P);
fly2i = *(fly1P + 1);
00099: 0111 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00100: 0114 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly1P + 1);
fly3r = *(fly1P + FlyOffsetA);
00102: 0117 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00103: 011D 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00104: 0120 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly1P + FlyOffsetA);
fly3i = *(fly1P + FlyOffsetAIm);
00106: 0123 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00107: 0129 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00108: 012C 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly1P + FlyOffsetAIm);

	t0r = fly0r + fly0i;
00110: 012F D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00111: 0135 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
00112: 013B D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = fly0r + fly0i;
	t0i = fly0r - fly0i;
00114: 013E D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00115: 0144 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
00116: 014A D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = fly0r - fly0i;
	t1r = fly1r + fly1r;
00118: 014D D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00119: 0153 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
00120: 0159 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = fly1r + fly1r;
	t1i = -fly1i - fly1i;
00122: 015C D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00123: 015F D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00124: 0162 D9 E0       FCHS    
00125: 0164 DE E1       FSUBRP  ST(1), ST
00126: 0166 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = -fly1i - fly1i;

	fly0r = fly2r + fly3r;
00128: 0169 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00129: 016C D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
00130: 016F D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly2r + fly3r;
	fly0i = fly2i - fly3i;
00132: 0175 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00133: 0178 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
00134: 017B D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly2i - fly3i;
	fly1r = fly2r - fly3r;
00136: 0181 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00137: 0184 D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
00138: 0187 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly2r - fly3r;
	fly1i = fly2i + fly3i;
00140: 018D D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00141: 0190 D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
00142: 0193 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly2i + fly3i;

	fly3r = fly1r * U0r;
00144: 0196 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00145: 0199 D8 8D FFFFFF7CFMUL  DWORD PTR FFFFFF7C[EBP]
00146: 019F D9 55 E4    FST     DWORD PTR FFFFFFE4[EBP]
00147: 01A2 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly1r * U0r;
	fly3r = fly3r - U0r * fly1i;
00149: 01A5 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00150: 01A8 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
00151: 01AB D9 55 E8    FST     DWORD PTR FFFFFFE8[EBP]
00152: 01AE D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00153: 01B1 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly3r - U0r * fly1i;
	fly3i = fly1r * U0r;
00155: 01B4 8B 45 E4    MOV     EAX, DWORD PTR FFFFFFE4[EBP]
00156: 01B7 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = fly1r * U0r;
	fly3i = fly3i + U0r * fly1i;
00158: 01BA D9 45 E8    FLD     DWORD PTR FFFFFFE8[EBP]
00159: 01BD D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00160: 01C0 D9 55 90    FST     DWORD PTR FFFFFF90[EBP]
fly3i = fly3i + U0r * fly1i;

	fly2r = fly0r - fly3i;
00162: 01C3 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
00163: 01C9 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly0r - fly3i;
	fly2i = fly0i + fly3r;
00165: 01CC D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00166: 01CF D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
00167: 01D5 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly0i + fly3r;
	fly1r = fly0r + fly3i;
00169: 01D8 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00170: 01DB D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
00171: 01E1 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly0r + fly3i;
	fly1i = -fly0i + fly3r;
00173: 01E7 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00174: 01EA D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00175: 01F0 D9 E0       FCHS    
00176: 01F2 DE C1       FADDP   ST(1), ST
00177: 01F4 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = -fly0i + fly3r;

*(IOP) = t0r;
00179: 01F7 8B 4D D4    MOV     ECX, DWORD PTR FFFFFFD4[EBP]
00180: 01FA 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00181: 01FD 89 08       MOV     DWORD PTR 00000000[EAX], ECX
*(IOP) = t0r;
*(IOP + 1) = t0i;
00183: 01FF 8B 4D D8    MOV     ECX, DWORD PTR FFFFFFD8[EBP]
00184: 0202 89 48 04    MOV     DWORD PTR 00000004[EAX], ECX
*(IOP + 1) = t0i;
*(fly0P) = t1r;
00186: 0205 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
00187: 0208 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t1r;
*(fly0P + 1) = t1i;
00189: 020A 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
00190: 020D 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t1i;
*(fly1P) = fly2r;
00192: 0210 8B 45 84    MOV     EAX, DWORD PTR FFFFFF84[EBP]
00193: 0213 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = fly2r;
*(fly1P + 1) = fly2i;
00195: 0215 8B 45 88    MOV     EAX, DWORD PTR FFFFFF88[EBP]
00196: 0218 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = fly2i;
*(fly1P + FlyOffsetA) = fly1r;
00198: 021B 8B 8D FFFFFF7CMOV   ECX, DWORD PTR FFFFFF7C[EBP]
00199: 0221 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00200: 0227 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetA) = fly1r;
*(fly1P + FlyOffsetAIm) = fly1i;
00202: 022A 8B 4D 80    MOV     ECX, DWORD PTR FFFFFF80[EBP]
00203: 022D 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00204: 0233 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetAIm) = fly1i;

U0rP = &Utbl[1];
00206: 0236 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
00207: 0239 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
00208: 023F 83 85 FFFFFF2004 ADD DWORD PTR FFFFFF20[EBP], 00000004
00209: 0246             NOOP    
U0rP = &Utbl[1];
U0iP = &Utbl[Ntbl[M-2]-1];
00211: 0246 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00212: 0249 8B 34 85 FFFFFFF8 MOV ESI, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF8[EAX*4]
00213: 0250 83 C6 FF    ADD     ESI, FFFFFFFF
00214: 0253             NOOP    
00215: 0253 89 B5 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], ESI
00216: 0259 C1 A5 FFFFFF1802 SHL DWORD PTR FFFFFF18[EBP], 00000002
00217: 0260 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
00233: 0266 89 F2       MOV     EDX, ESI
00218: 0268 03 45 14    ADD     EAX, DWORD PTR 00000014[EBP]
00219: 026B 89 85 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], EAX
00220: 0271             NOOP    
U0iP = &Utbl[Ntbl[M-2]-1];

U0r =  *U0rP,
00222: 0271 8B 85 FFFFFF20MOV   EAX, DWORD PTR FFFFFF20[EBP]
00223: 0277 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
00224: 0279 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
00225: 027C 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
00226: 0282 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
00227: 0284 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
U0r =  *U0rP,
U0i =  *U0iP;
	
fly0P = (IOP + 2);
00229: 0287 8B 5D 08    MOV     EBX, DWORD PTR 00000008[EBP]
00238: 028A 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00230: 028D 83 C3 08    ADD     EBX, 00000008
00231: 0290             NOOP    
fly0P = (IOP + 2);
fly1P = (IOP + (Ntbl[M-2]-1)*2);
00234: 0290 C1 E2 03    SHL     EDX, 00000003
00239: 0293 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
00235: 029A 03 55 08    ADD     EDX, DWORD PTR 00000008[EBP]
00236: 029D             NOOP    
fly1P = (IOP + (Ntbl[M-2]-1)*2);

				/* Butterflys */
				/*
		f0	-	 t0		-	f2
		f1	-t1 -U0- f3	-	f1
		f2	-	 f0		-	t0
		f3	-f1	-U0a t1	-	f3
				*/

for (diffUcnt = Ntbl[M-3]-1; diffUcnt > 0 ; diffUcnt--){
00240: 029D 89 85 FFFFFF04MOV   DWORD PTR FFFFFF04[EBP], EAX
00241: 02A3 83 85 FFFFFF04FF ADD DWORD PTR FFFFFF04[EBP], FFFFFFFF
00242: 02AA             NOOP    
00243: 02AA E9 000001E4 JMP     L0003
00244: 02AF     L0004
for (diffUcnt = Ntbl[M-3]-1; diffUcnt > 0 ; diffUcnt--){

	fly0r = *(fly0P);
00246: 02AF 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00247: 02B1 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly0r = *(fly0P);
	fly0i = *(fly0P + 1);
00249: 02B7 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00250: 02BA 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(fly0P + 1);
	fly1r = *(fly1P + FlyOffsetA);
00252: 02C0 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00253: 02C6 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00254: 02C9 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly1P + FlyOffsetA);
	fly1i = *(fly1P + FlyOffsetAIm);
00256: 02CF 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00257: 02D5 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00258: 02D8 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly1i = *(fly1P + FlyOffsetAIm);
	fly2r = *(fly1P);
00260: 02DB 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00261: 02DD 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly1P);
	fly2i = *(fly1P + 1);
00263: 02E0 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00264: 02E3 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly1P + 1);
	fly3r = *(fly0P + FlyOffsetA);
00266: 02E6 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00267: 02EC 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00268: 02EF 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly0P + FlyOffsetA);
	fly3i = *(fly0P + FlyOffsetAIm);
00270: 02F2 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00271: 02F8 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00272: 02FB 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly0P + FlyOffsetAIm);

	t0r = fly0r + fly1r;
00274: 02FE D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00275: 0304 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
00276: 030A D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = fly0r + fly1r;
	t0i = fly0i - fly1i;
00278: 030D D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00279: 0310 D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
00280: 0316 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = fly0i - fly1i;
	t1r = fly0r - fly1r;
00282: 0319 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00283: 031F D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
00284: 0325 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = fly0r - fly1r;
	t1i = fly0i + fly1i;
00286: 0328 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00287: 032B D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
00288: 0331 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = fly0i + fly1i;

	fly0r = fly2r + fly3r;
00290: 0334 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00291: 0337 D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
00292: 033A D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly2r + fly3r;
	fly0i = fly2i - fly3i;
00294: 0340 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00295: 0343 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
00296: 0346 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly2i - fly3i;
	fly1r = fly2r - fly3r;
00298: 034C D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00299: 034F D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
00300: 0352 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly2r - fly3r;
	fly1i = fly2i + fly3i;
00302: 0358 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00303: 035B D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
00304: 035E D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly2i + fly3i;


	fly3r = t1r * U0r;
00306: 0361 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00307: 0364 D8 4D DC    FMUL    DWORD PTR FFFFFFDC[EBP]
00308: 0367 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = t1r * U0r;
	fly3r = fly3r - U0i * t1i;
00310: 036A D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00311: 036D D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
00312: 0370 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
00313: 0373 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly3r - U0i * t1i;
	fly3i = t1r * U0i;
00315: 0376 D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00316: 0379 D8 4D DC    FMUL    DWORD PTR FFFFFFDC[EBP]
00317: 037C D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = t1r * U0i;
	fly3i = fly3i + U0r * t1i;
00319: 037F D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00320: 0382 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
00321: 0385 D8 45 90    FADD    DWORD PTR FFFFFF90[EBP]
00322: 0388 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly3i + U0r * t1i;

	t1r = fly1r * U0i;
00324: 038B D9 45 B8    FLD     DWORD PTR FFFFFFB8[EBP]
00325: 038E D8 8D FFFFFF7CFMUL  DWORD PTR FFFFFF7C[EBP]
00326: 0394 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = fly1r * U0i;
	t1r = t1r - U0r * fly1i;
00328: 0397 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00329: 039A D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
00330: 039D D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
00331: 03A0 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = t1r - U0r * fly1i;
	t1i = fly1r * U0r;
00333: 03A3 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
00334: 03A6 D8 8D FFFFFF7CFMUL  DWORD PTR FFFFFF7C[EBP]
00335: 03AC D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = fly1r * U0r;
	t1i = t1i + U0i * fly1i;
00337: 03AF D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00338: 03B2 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
00339: 03B5 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
00340: 03B8 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = t1i + U0i * fly1i;


	fly2r = t0r - fly3i;
00342: 03BB D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00343: 03BE D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
00344: 03C1 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = t0r - fly3i;
	fly2i = t0i + fly3r;
00346: 03C4 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00347: 03C7 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
00348: 03CA D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = t0i + fly3r;
	fly1r = t0r + fly3i;
00350: 03CD D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00351: 03D0 D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
00352: 03D3 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = t0r + fly3i;
	fly1i = -t0i + fly3r;
00354: 03D9 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00355: 03DC D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
00356: 03DF D9 E0       FCHS    
00357: 03E1 DE C1       FADDP   ST(1), ST
00358: 03E3 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = -t0i + fly3r;

	t0r = fly0r - t1i;
00360: 03E6 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00361: 03E9 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
00362: 03EF D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = fly0r - t1i;
	t0i = fly0i + t1r;
00364: 03F2 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
00365: 03F5 D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
00366: 03FB D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = fly0i + t1r;
	fly3r = fly0r + t1i;
00368: 03FE D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00369: 0401 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
00370: 0407 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly0r + t1i;
	fly3i = -fly0i + t1r;
00372: 040A D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
00373: 040D D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00374: 0413 D9 E0       FCHS    
00375: 0415 DE C1       FADDP   ST(1), ST
00376: 0417 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = -fly0i + t1r;


	*(fly0P) = fly2r;
00378: 041A 8B 45 84    MOV     EAX, DWORD PTR FFFFFF84[EBP]
00379: 041D 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = fly2r;
	*(fly0P + 1) = fly2i;
00381: 041F 8B 45 88    MOV     EAX, DWORD PTR FFFFFF88[EBP]
00382: 0422 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = fly2i;
	*(fly1P + FlyOffsetA) = fly1r;
00384: 0425 8B 8D FFFFFF7CMOV   ECX, DWORD PTR FFFFFF7C[EBP]
00385: 042B 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00386: 0431 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetA) = fly1r;
	*(fly1P + FlyOffsetAIm) = fly1i;
00388: 0434 8B 4D 80    MOV     ECX, DWORD PTR FFFFFF80[EBP]
00389: 0437 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00390: 043D 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetAIm) = fly1i;

	U0r = *(U0rP = (U0rP + 1));		
00392: 0440 83 85 FFFFFF2004 ADD DWORD PTR FFFFFF20[EBP], 00000004
00393: 0447 8B 85 FFFFFF20MOV   EAX, DWORD PTR FFFFFF20[EBP]
00394: 044D 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
00395: 044F 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
U0r = *(U0rP = (U0rP + 1));		
	U0i = *(U0iP = (U0iP - 1));
00397: 0452 83 85 FFFFFF18FC ADD DWORD PTR FFFFFF18[EBP], FFFFFFFC
00398: 0459 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
00399: 045F 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
00400: 0461 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
U0i = *(U0iP = (U0iP - 1));

	*(fly1P) = t0r;
00402: 0464 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
00403: 0467 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t0r;
	*(fly1P + 1) = t0i;
00405: 0469 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
00406: 046C 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t0i;
	*(fly0P + FlyOffsetA) = fly3r;
00408: 046F 8B 4D 8C    MOV     ECX, DWORD PTR FFFFFF8C[EBP]
00409: 0472 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00410: 0478 89 0C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], ECX
*(fly0P + FlyOffsetA) = fly3r;
	*(fly0P + FlyOffsetAIm) = fly3i;
00412: 047B 8B 4D 90    MOV     ECX, DWORD PTR FFFFFF90[EBP]
00413: 047E 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00414: 0484 89 0C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], ECX
*(fly0P + FlyOffsetAIm) = fly3i;

	fly0P += 2;
00416: 0487 83 C3 08    ADD     EBX, 00000008
fly0P += 2;
	fly1P -= 2;
00418: 048A 83 EA 08    SUB     EDX, 00000008
fly1P -= 2;
};
00420: 048D FF 8D FFFFFF04DEC   DWORD PTR FFFFFF04[EBP]
00421: 0493     L0003
00422: 0493 83 BD FFFFFF0400 CMP DWORD PTR FFFFFF04[EBP], 00000000
00423: 049A 0F 8F FFFFFE0F JG   L0004
};

M=M-1;		/* for RIFFT */
00425: 04A0 83 45 0C FF ADD     DWORD PTR 0000000C[EBP], FFFFFFFF
M=M-1;		/* for RIFFT */

FlyOffsetA = Ntbl[M] * 2/2;
00427: 04A4 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00430: 04A7 B9 00000002 MOV     ECX, 00000002
00428: 04AC 8B 14 85 00000000 MOV EDX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
00429: 04B3 D1 E2       SHL     EDX, 00000001
00431: 04B5 89 D0       MOV     EAX, EDX
00432: 04B7 99          CDQ     
00433: 04B8 F7 F9       IDIV    ECX
00434: 04BA 89 85 FFFFFED4MOV   DWORD PTR FFFFFED4[EBP], EAX
00435: 04C0             NOOP    
FlyOffsetA = Ntbl[M] * 2/2;
FlyOffsetAIm = FlyOffsetA + 1;
00437: 04C0 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00438: 04C6 89 85 FFFFFEC8MOV   DWORD PTR FFFFFEC8[EBP], EAX
00439: 04CC 83 85 FFFFFEC801 ADD DWORD PTR FFFFFEC8[EBP], 00000001
00440: 04D3             NOOP    
FlyOffsetAIm = FlyOffsetA + 1;
FlyOffsetB = FlyOffsetA + 2;
00442: 04D3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00443: 04D9 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
00444: 04DF 83 85 FFFFFEEC02 ADD DWORD PTR FFFFFEEC[EBP], 00000002
00445: 04E6             NOOP    
FlyOffsetB = FlyOffsetA + 2;
FlyOffsetBIm = FlyOffsetB + 1;
00447: 04E6 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00448: 04EC 89 85 FFFFFEF0MOV   DWORD PTR FFFFFEF0[EBP], EAX
00449: 04F2 83 85 FFFFFEF001 ADD DWORD PTR FFFFFEF0[EBP], 00000001
00450: 04F9             NOOP    
FlyOffsetBIm = FlyOffsetB + 1;

/* BitrevR2 ** bit reverse shuffle and first radix 2 stage ******/

scale = 1./Ntbl[M+1];
00452: 04F9 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00453: 04FC DB 04 85 00000004 FILD DWORD PTR ?Ntbl@@3PBJB+00000004[EAX*4]
00454: 0503 D9 E8       FLD1    
00455: 0505 DE F1       FDIVRP  ST(1), ST
00456: 0507 D9 9D FFFFFF68FSTP  DWORD PTR FFFFFF68[EBP]
00457: 050D D9 85 FFFFFF68FLD   DWORD PTR FFFFFF68[EBP]
00458: 0513 D9 9D FFFFFF70FSTP  DWORD PTR FFFFFF70[EBP]
scale = 1./Ntbl[M+1];
for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
00460: 0519 C7 85 FFFFFF3C00000000 MOV DWORD PTR FFFFFF3C[EBP], 00000000
00461: 0523 8B 75 0C    MOV     ESI, DWORD PTR 0000000C[EBP]
00464: 0526 8B 85 FFFFFF60MOV   EAX, DWORD PTR FFFFFF60[EBP]
00462: 052C D1 FE       SAR     ESI, 00000001
00463: 052E             NOOP    
00465: 052E 89 85 FFFFFEF8MOV   DWORD PTR FFFFFEF8[EBP], EAX
00466: 0534 C1 A5 FFFFFEF802 SHL DWORD PTR FFFFFEF8[EBP], 00000002
00467: 053B             NOOP    
00468: 053B 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00470: 053E 8B 7D 0C    MOV     EDI, DWORD PTR 0000000C[EBP]
00469: 0541 D1 FA       SAR     EDX, 00000001
00471: 0543 29 D7       SUB     EDI, EDX
00472: 0545             NOOP    
00473: 0545 E9 000004E2 JMP     L0005
00474: 054A     L0006
for (stage = 0; stage < Ntbl[M-(M>>1)]*2; stage += Ntbl[M>>1]*2){
	for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
00476: 054A 8B 04 B5 FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ESI*4]
00495: 0551 B9 00000002 MOV     ECX, 00000002
00477: 0556 89 85 FFFFFF34MOV   DWORD PTR FFFFFF34[EBP], EAX
00478: 055C 83 85 FFFFFF34FF ADD DWORD PTR FFFFFF34[EBP], FFFFFFFF
00479: 0563             NOOP    
00480: 0563 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
00481: 0566 89 85 FFFFFED0MOV   DWORD PTR FFFFFED0[EBP], EAX
00482: 056C D1 BD FFFFFED0SAR   DWORD PTR FFFFFED0[EBP], 00000001
00483: 0572             NOOP    
00484: 0572 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00485: 0575 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
00486: 057B 03 85 FFFFFEF8ADD   EAX, DWORD PTR FFFFFEF8[EBP]
00487: 0581 89 85 FFFFFEE8MOV   DWORD PTR FFFFFEE8[EBP], EAX
00488: 0587             NOOP    
00489: 0587 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
00490: 058D 89 85 FFFFFEE4MOV   DWORD PTR FFFFFEE4[EBP], EAX
00491: 0593 C1 A5 FFFFFEE402 SHL DWORD PTR FFFFFEE4[EBP], 00000002
00492: 059A             NOOP    
00493: 059A 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00494: 059D 83 C2 01    ADD     EDX, 00000001
00496: 05A0 89 D0       MOV     EAX, EDX
00497: 05A2 99          CDQ     
00498: 05A3 F7 F9       IDIV    ECX
00499: 05A5 89 85 FFFFFEF4MOV   DWORD PTR FFFFFEF4[EBP], EAX
00500: 05AB             NOOP    
00501: 05AB E9 00000460 JMP     L0007
00502: 05B0     L0008
for (LoopN = (Ntbl[(M>>1)-1]-1); LoopN >= 0; LoopN--){
		LoopCnt = (Ntbl[(M>>1)-1]-1);
00504: 05B0 8B 8D FFFFFED0MOV   ECX, DWORD PTR FFFFFED0[EBP]
00505: 05B6 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
00506: 05BD 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
00507: 05C3 83 85 FFFFFEFCFF ADD DWORD PTR FFFFFEFC[EBP], FFFFFFFF
00508: 05CA             NOOP    
LoopCnt = (Ntbl[(M>>1)-1]-1);
		fly0P = ioptr + Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
00510: 05CA 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
00513: 05D0 8B 8D FFFFFF5CMOV   ECX, DWORD PTR FFFFFF5C[EBP]
00511: 05D6 8A 98 00000000 MOV  BL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00521: 05DC 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
00512: 05E2 81 E3 000000FF AND  EBX, 000000FF
00514: 05E8 D3 FB       SAR     EBX, ECX
00515: 05EA C1 E3 04    SHL     EBX, 00000004
00520: 05ED 8B 8D FFFFFEF4MOV   ECX, DWORD PTR FFFFFEF4[EBP]
00516: 05F3 03 9D FFFFFEE8ADD   EBX, DWORD PTR FFFFFEE8[EBP]
00517: 05F9 03 9D FFFFFEE4ADD   EBX, DWORD PTR FFFFFEE4[EBP]
00518: 05FF             NOOP    
fly0P = ioptr + Nroot_1_ColInc + ((int)BRcnt[LoopN] >> BRshift)*(2*2) + stage;
		IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
00522: 05FF 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
00523: 0605 D3 A5 FFFFFF2CSHL   DWORD PTR FFFFFF2C[EBP], ECX
00524: 060B C1 A5 FFFFFF2C03 SHL DWORD PTR FFFFFF2C[EBP], 00000003
00525: 0612 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
00526: 0618 03 45 08    ADD     EAX, DWORD PTR 00000008[EBP]
00527: 061B 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
00528: 0621 03 85 FFFFFEE4ADD   EAX, DWORD PTR FFFFFEE4[EBP]
00529: 0627 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
00530: 062D             NOOP    
IOP = ioptr + (LoopN<<(M+1)/2) * 2 + stage;
		fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
00532: 062D 8B 85 FFFFFEFCMOV   EAX, DWORD PTR FFFFFEFC[EBP]
00535: 0633 8B 8D FFFFFF5CMOV   ECX, DWORD PTR FFFFFF5C[EBP]
00533: 0639 8A 90 00000000 MOV  DL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00541: 063F 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00534: 0641 81 E2 000000FF AND  EDX, 000000FF
00536: 0647 D3 FA       SAR     EDX, ECX
00537: 0649 C1 E2 04    SHL     EDX, 00000004
00538: 064C 03 95 FFFFFF2CADD   EDX, DWORD PTR FFFFFF2C[EBP]
00539: 0652             NOOP    
fly1P = IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2);
		fly0r = *(fly0P);
00542: 0652 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly0r = *(fly0P);
		fly0i = *(fly0P+1);
00544: 0658 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00545: 065B 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(fly0P+1);
		fly1r = *(fly0P+FlyOffsetA);
00547: 0661 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00548: 0667 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00549: 066A 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
		fly1i = *(fly0P+FlyOffsetAIm);
00551: 0670 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00552: 0676 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00553: 0679 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
00554: 067C 8B 85 FFFFFF64MOV   EAX, DWORD PTR FFFFFF64[EBP]
00555: 0682 89 85 FFFFFECCMOV   DWORD PTR FFFFFECC[EBP], EAX
00556: 0688 C1 A5 FFFFFECC02 SHL DWORD PTR FFFFFECC[EBP], 00000002
00557: 068F E9 00000269 JMP     L001B
00558: 0694     L000A
fly1i = *(fly0P+FlyOffsetAIm);
		for (; LoopCnt > LoopN;){
			fly2r = *(fly0P+2);
00560: 0694 8B 43 08    MOV     EAX, DWORD PTR 00000008[EBX]
00561: 0697 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly0P+2);
			fly2i = *(fly0P+(2+1));
00563: 069A 8B 43 0C    MOV     EAX, DWORD PTR 0000000C[EBX]
00564: 069D 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly0P+(2+1));
			fly3r = *(fly0P+FlyOffsetB);
00566: 06A0 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00567: 06A6 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00568: 06A9 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
			fly3i = *(fly0P+FlyOffsetBIm);
00570: 06AC 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
00571: 06B2 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00572: 06B5 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);
			fly4r = *(fly1P);
00574: 06B8 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00575: 06BA 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly4r = *(fly1P);
			fly4i = *(fly1P+1);
00577: 06BD 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00578: 06C0 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly4i = *(fly1P+1);
			fly5r = *(fly1P+FlyOffsetA);
00580: 06C3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00581: 06C9 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00582: 06CC 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly5r = *(fly1P+FlyOffsetA);
			fly5i = *(fly1P+FlyOffsetAIm);
00584: 06CF 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00585: 06D5 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00586: 06D8 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly5i = *(fly1P+FlyOffsetAIm);
			fly6r = *(fly1P+2);
00588: 06DB 8B 42 08    MOV     EAX, DWORD PTR 00000008[EDX]
00589: 06DE 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly6r = *(fly1P+2);
			fly6i = *(fly1P+(2+1));
00591: 06E1 8B 42 0C    MOV     EAX, DWORD PTR 0000000C[EDX]
00592: 06E4 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly6i = *(fly1P+(2+1));
			fly7r = *(fly1P+FlyOffsetB);
00594: 06E7 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00595: 06ED 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00596: 06F0 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly7r = *(fly1P+FlyOffsetB);
			fly7i = *(fly1P+FlyOffsetBIm);
00598: 06F3 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
00599: 06F9 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00600: 06FC 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly7i = *(fly1P+FlyOffsetBIm);
			
			t0r   = fly0r + fly1r;
00602: 06FF D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00603: 0705 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
00604: 070B D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r   = fly0r + fly1r;
			t0i   = fly0i + fly1i;
00606: 070E D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00607: 0711 D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
00608: 0717 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i   = fly0i + fly1i;
			fly1r = fly0r - fly1r;
00610: 071A D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00611: 0720 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
00612: 0726 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly0r - fly1r;
			fly1i = fly0i - fly1i;
00614: 072C D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00615: 072F D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
00616: 0735 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly0i - fly1i;
			t1r   = fly2r + fly3r;
00618: 0738 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00619: 073B D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
00620: 073E D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r   = fly2r + fly3r;
			t1i   = fly2i + fly3i;
00622: 0741 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00623: 0744 D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
00624: 0747 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i   = fly2i + fly3i;
			fly3r = fly2r - fly3r;
00626: 074A D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00627: 074D D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
00628: 0750 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly2r - fly3r;
			fly3i = fly2i - fly3i;
00630: 0753 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00631: 0756 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
00632: 0759 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly2i - fly3i;
			fly0r = fly4r + fly5r;
00634: 075C D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00635: 075F D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
00636: 0762 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly4r + fly5r;
			fly0i = fly4i + fly5i;
00638: 0768 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00639: 076B D8 45 98    FADD    DWORD PTR FFFFFF98[EBP]
00640: 076E D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly4i + fly5i;
			fly5r = fly4r - fly5r;
00642: 0774 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00643: 0777 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
00644: 077A D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly4r - fly5r;
			fly5i = fly4i - fly5i;
00646: 077D D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00647: 0780 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
00648: 0783 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly4i - fly5i;
			fly2r = fly6r + fly7r;
00650: 0786 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00651: 0789 D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
00652: 078C D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly6r + fly7r;
			fly2i = fly6i + fly7i;
00654: 078F D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00655: 0792 D8 45 A8    FADD    DWORD PTR FFFFFFA8[EBP]
00656: 0795 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly6i + fly7i;
			fly7r = fly6r - fly7r;
00658: 0798 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00659: 079B D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
00660: 079E D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = fly6r - fly7r;
			fly7i = fly6i - fly7i;
00662: 07A1 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00663: 07A4 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
00664: 07A7 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = fly6i - fly7i;

			*(fly1P) = scale*t0r;
00666: 07AA D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
00667: 07AD D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00668: 07B3 D9 1A       FSTP    DWORD PTR 00000000[EDX]
*(fly1P) = scale*t0r;
			*(fly1P+1) = scale*t0i;
00670: 07B5 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
00671: 07B8 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00672: 07BE D9 5A 04    FSTP    DWORD PTR 00000004[EDX]
*(fly1P+1) = scale*t0i;
			*(fly1P+2) = scale*fly1r;
00674: 07C1 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00675: 07C7 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00676: 07CD D9 5A 08    FSTP    DWORD PTR 00000008[EDX]
*(fly1P+2) = scale*fly1r;
			*(fly1P+(2+1)) = scale*fly1i;
00678: 07D0 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00679: 07D3 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00680: 07D9 D9 5A 0C    FSTP    DWORD PTR 0000000C[EDX]
*(fly1P+(2+1)) = scale*fly1i;
			*(fly1P+FlyOffsetA) = scale*t1r;
00682: 07DC D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
00683: 07DF D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00684: 07E5 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00685: 07EB D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetA) = scale*t1r;
			*(fly1P+FlyOffsetAIm) = scale*t1i;
00687: 07EE D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00688: 07F1 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00689: 07F7 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00690: 07FD D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetAIm) = scale*t1i;
			*(fly1P+FlyOffsetB) = scale*fly3r;
00692: 0800 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00693: 0803 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00694: 0809 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00695: 080F D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetB) = scale*fly3r;
			*(fly1P+FlyOffsetBIm) = scale*fly3i;
00697: 0812 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00698: 0815 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00699: 081B 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
00700: 0821 D9 1C 82    FSTP    DWORD PTR 00000000[EDX][EAX*4]
*(fly1P+FlyOffsetBIm) = scale*fly3i;
			*(fly0P) = scale*fly0r;
00702: 0824 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
00703: 082A D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00704: 0830 D9 1B       FSTP    DWORD PTR 00000000[EBX]
*(fly0P) = scale*fly0r;
			*(fly0P+1) = scale*fly0i;
00706: 0832 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
00707: 0838 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00708: 083E D9 5B 04    FSTP    DWORD PTR 00000004[EBX]
*(fly0P+1) = scale*fly0i;
			*(fly0P+2) = scale*fly5r;
00710: 0841 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
00711: 0844 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00712: 084A D9 5B 08    FSTP    DWORD PTR 00000008[EBX]
*(fly0P+2) = scale*fly5r;
			*(fly0P+(2+1)) = scale*fly5i;
00714: 084D D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
00715: 0850 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00716: 0856 D9 5B 0C    FSTP    DWORD PTR 0000000C[EBX]
*(fly0P+(2+1)) = scale*fly5i;
			*(fly0P+FlyOffsetA) = scale*fly2r;
00718: 0859 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
00719: 085C D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00720: 0862 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00721: 0868 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetA) = scale*fly2r;
			*(fly0P+FlyOffsetAIm) = scale*fly2i;
00723: 086B D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
00724: 086E D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00725: 0874 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00726: 087A D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetAIm) = scale*fly2i;
			*(fly0P+FlyOffsetB) = scale*fly7r;
00728: 087D D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
00729: 0880 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00730: 0886 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00731: 088C D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetB) = scale*fly7r;
			*(fly0P+FlyOffsetBIm) = scale*fly7i;
00733: 088F D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
00734: 0892 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00735: 0898 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
00736: 089E D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetBIm) = scale*fly7i;

			fly0P -= Nrems2;
00738: 08A1 2B 9D FFFFFECCSUB   EBX, DWORD PTR FFFFFECC[EBP]
fly0P -= Nrems2;
			fly0r = *(fly0P);
00740: 08A7 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00741: 08A9 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly0r = *(fly0P);
			fly0i = *(fly0P+1);
00743: 08AF 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00744: 08B2 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(fly0P+1);
			fly1r = *(fly0P+FlyOffsetA);
00746: 08B8 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00747: 08BE 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00748: 08C1 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly0P+FlyOffsetA);
			fly1i = *(fly0P+FlyOffsetAIm);
00750: 08C7 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00751: 08CD 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00752: 08D0 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly1i = *(fly0P+FlyOffsetAIm);
			LoopCnt -= 1;
00754: 08D3 83 AD FFFFFEFC01 SUB DWORD PTR FFFFFEFC[EBP], 00000001
LoopCnt -= 1;
			fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
00756: 08DA 8B 85 FFFFFEFCMOV   EAX, DWORD PTR FFFFFEFC[EBP]
00759: 08E0 8B 8D FFFFFF5CMOV   ECX, DWORD PTR FFFFFF5C[EBP]
00757: 08E6 8A 90 00000000 MOV  DL, BYTE PTR ?BRcnt@@3PBEB[EAX]
00758: 08EC 81 E2 000000FF AND  EDX, 000000FF
00760: 08F2 D3 FA       SAR     EDX, ECX
00761: 08F4 C1 E2 04    SHL     EDX, 00000004
00762: 08F7 03 95 FFFFFF2CADD   EDX, DWORD PTR FFFFFF2C[EBP]
00763: 08FD     L001B
00764: 08FD             NOOP    
fly1P = (IOP + ((int)BRcnt[LoopCnt] >> BRshift)*(2*2));
		};
00766: 08FD     L0009
00767: 08FD 8B 85 FFFFFEFCMOV   EAX, DWORD PTR FFFFFEFC[EBP]
00768: 0903 3B 85 FFFFFF34CMP   EAX, DWORD PTR FFFFFF34[EBP]
00769: 0909 0F 8F FFFFFD85 JG   L000A
};
		fly2r = *(fly0P+2);
00771: 090F 8B 43 08    MOV     EAX, DWORD PTR 00000008[EBX]
00772: 0912 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly0P+2);
		fly2i = *(fly0P+(2+1));
00774: 0915 8B 43 0C    MOV     EAX, DWORD PTR 0000000C[EBX]
00775: 0918 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly0P+(2+1));
		fly3r = *(fly0P+FlyOffsetB);
00777: 091B 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00778: 0921 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00779: 0924 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly0P+FlyOffsetB);
		fly3i = *(fly0P+FlyOffsetBIm);
00781: 0927 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
00782: 092D 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00783: 0930 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly0P+FlyOffsetBIm);

		t0r   = fly0r + fly1r;
00785: 0933 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00786: 0939 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
00787: 093F D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r   = fly0r + fly1r;
		t0i   = fly0i + fly1i;
00789: 0942 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00790: 0945 D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
00791: 094B D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i   = fly0i + fly1i;
		fly1r = fly0r - fly1r;
00793: 094E D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00794: 0954 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
00795: 095A D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly0r - fly1r;
		fly1i = fly0i - fly1i;
00797: 0960 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00798: 0963 D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
00799: 0969 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly0i - fly1i;
		t1r   = fly2r + fly3r;
00801: 096C D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00802: 096F D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
00803: 0972 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r   = fly2r + fly3r;
		t1i   = fly2i + fly3i;
00805: 0975 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00806: 0978 D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
00807: 097B D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i   = fly2i + fly3i;
		fly3r = fly2r - fly3r;
00809: 097E D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00810: 0981 D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
00811: 0984 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly2r - fly3r;
		fly3i = fly2i - fly3i;
00813: 0987 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00814: 098A D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
00815: 098D D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly2i - fly3i;

		*(fly0P) = scale*t0r;
00817: 0990 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
00818: 0993 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00819: 0999 D9 1B       FSTP    DWORD PTR 00000000[EBX]
*(fly0P) = scale*t0r;
		*(fly0P+1) = scale*t0i;
00821: 099B D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
00822: 099E D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00823: 09A4 D9 5B 04    FSTP    DWORD PTR 00000004[EBX]
*(fly0P+1) = scale*t0i;
		*(fly0P+2) = scale*fly1r;
00825: 09A7 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
00826: 09AD D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00827: 09B3 D9 5B 08    FSTP    DWORD PTR 00000008[EBX]
*(fly0P+2) = scale*fly1r;
		*(fly0P+(2+1)) = scale*fly1i;
00829: 09B6 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
00830: 09B9 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00831: 09BF D9 5B 0C    FSTP    DWORD PTR 0000000C[EBX]
*(fly0P+(2+1)) = scale*fly1i;
		*(fly0P+FlyOffsetA) = scale*t1r;
00833: 09C2 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
00834: 09C5 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00835: 09CB 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00836: 09D1 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetA) = scale*t1r;
		*(fly0P+FlyOffsetAIm) = scale*t1i;
00838: 09D4 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
00839: 09D7 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00840: 09DD 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00841: 09E3 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetAIm) = scale*t1i;
		*(fly0P+FlyOffsetB) = scale*fly3r;
00843: 09E6 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
00844: 09E9 D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00845: 09EF 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00846: 09F5 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetB) = scale*fly3r;
		*(fly0P+FlyOffsetBIm) = scale*fly3i;
00848: 09F8 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
00849: 09FB D8 8D FFFFFF70FMUL  DWORD PTR FFFFFF70[EBP]
00850: 0A01 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
00851: 0A07 D9 1C 83    FSTP    DWORD PTR 00000000[EBX][EAX*4]
*(fly0P+FlyOffsetBIm) = scale*fly3i;

	};
00853: 0A0A FF 8D FFFFFF34DEC   DWORD PTR FFFFFF34[EBP]
00854: 0A10     L0007
00855: 0A10 83 BD FFFFFF3400 CMP DWORD PTR FFFFFF34[EBP], 00000000
00856: 0A17 0F 8D FFFFFB93 JGE  L0008
};
};
00858: 0A1D 8B 04 B5 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[ESI*4]
00859: 0A24 D1 E0       SHL     EAX, 00000001
00860: 0A26 01 85 FFFFFF3CADD   DWORD PTR FFFFFF3C[EBP], EAX
00861: 0A2C     L0005
00862: 0A2C 8B 04 BD 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EDI*4]
00863: 0A33 D1 E0       SHL     EAX, 00000001
00864: 0A35 39 85 FFFFFF3CCMP   DWORD PTR FFFFFF3C[EBP], EAX
00865: 0A3B 0F 8C FFFFFB09 JL   L0006
};

/**** FFTC  **************/

scale = 2.0;

NdiffU = 2;
00867: 0A41 C7 85 FFFFFF5800000002 MOV DWORD PTR FFFFFF58[EBP], 00000002
NdiffU = 2;
Flyinc =  (NdiffU);
00869: 0A4B C7 85 FFFFFF4000000002 MOV DWORD PTR FFFFFF40[EBP], 00000002
Flyinc =  (NdiffU);

NsameU4 = Ntbl[M+1]/4;	/* for RIFFT */
00871: 0A55 BB 00000004 MOV     EBX, 00000004
00872: 0A5A 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00873: 0A5D 8B 04 8D 00000004 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+00000004[ECX*4]
00874: 0A64 99          CDQ     
00875: 0A65 F7 FB       IDIV    EBX
00876: 0A67 89 85 FFFFFF38MOV   DWORD PTR FFFFFF38[EBP], EAX
00877: 0A6D             NOOP    
NsameU4 = Ntbl[M+1]/4;	/* for RIFFT */
LoopN = Ntbl[M-3];
00879: 0A6D 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
00880: 0A70 8B 04 8D FFFFFFF4 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFF4[ECX*4]
00881: 0A77 89 85 FFFFFF34MOV   DWORD PTR FFFFFF34[EBP], EAX
LoopN = Ntbl[M-3];

stage = ((M-1)/3);
00883: 0A7D             NOOP    
00884: 0A7D 8D 51 FF    LEA     EDX, DWORD PTR FFFFFFFF[ECX]
00885: 0A80 B9 00000003 MOV     ECX, 00000003
00886: 0A85 89 D0       MOV     EAX, EDX
00887: 0A87 99          CDQ     
00888: 0A88 F7 F9       IDIV    ECX
00889: 0A8A 89 85 FFFFFF3CMOV   DWORD PTR FFFFFF3C[EBP], EAX
00890: 0A90             NOOP    
stage = ((M-1)/3);
if ( (M-1-(stage * 3)) != 0 ){
00892: 0A90 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
00894: 0A96 8B 55 0C    MOV     EDX, DWORD PTR 0000000C[EBP]
00893: 0A99 6B C0 03    IMUL    EAX, 00000003
00895: 0A9C 83 C2 FF    ADD     EDX, FFFFFFFF
00896: 0A9F 29 C2       SUB     EDX, EAX
00897: 0AA1             NOOP    
00898: 0AA1 09 D2       OR      EDX, EDX
00899: 0AA3 0F 84 00000604 JE   L000B
if ( (M-1-(stage * 3)) != 0 ){
	FlyOffsetA =  Flyinc << 2;
00901: 0AA9 C7 85 FFFFFED400000008 MOV DWORD PTR FFFFFED4[EBP], 00000008
FlyOffsetA =  Flyinc << 2;
	FlyOffsetB =  FlyOffsetA << 1;
00903: 0AB3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00904: 0AB9 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
00905: 0ABF D1 A5 FFFFFEECSHL   DWORD PTR FFFFFEEC[EBP], 00000001
00906: 0AC5             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
	FlyOffsetAIm =  FlyOffsetA + 1;
00908: 0AC5 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00909: 0ACB 89 85 FFFFFEC8MOV   DWORD PTR FFFFFEC8[EBP], EAX
00910: 0AD1 83 85 FFFFFEC801 ADD DWORD PTR FFFFFEC8[EBP], 00000001
00911: 0AD8             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
	FlyOffsetBIm =  FlyOffsetB + 1;
	if ( (M-1-(stage * 3)) == 1 ){
00913: 0AD8 83 FA 01    CMP     EDX, 00000001
00914: 0ADB 0F 85 0000025D JNE  L000C
if ( (M-1-(stage * 3)) == 1 ){
		/* 1 radix 2 stage */

		IOP = ioptr;
00916: 0AE1 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
00921: 0AE4 BF 00000008 MOV     EDI, 00000008
00917: 0AE9 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
IOP = ioptr;
		fly0P = IOP;
00919: 0AEF 89 C3       MOV     EBX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
00934: 0AF1 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
00922: 0AF7 89 DA       MOV     EDX, EBX
00935: 0AF9 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
00923: 0AFF 01 FA       ADD     EDX, EDI
00924: 0B01             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
00926: 0B01 89 D1       MOV     ECX, EDX
00936: 0B03 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
00927: 0B09 01 F9       ADD     ECX, EDI
00928: 0B0B             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
00930: 0B0B 89 CE       MOV     ESI, ECX
00937: 0B0D 89 85 FFFFFED8MOV   DWORD PTR FFFFFED8[EBP], EAX
00931: 0B13 01 FE       ADD     ESI, EDI
00932: 0B15             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0
			t1	-	-	t1
			f2	-  1-	f5
			f1	- -i-	f7
			f4	-	-	f4
			f0	-	-	f0
			f6	-  1-	f2
			f3	- -i-	f1
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
00938: 0B15 C1 A5 FFFFFED802 SHL DWORD PTR FFFFFED8[EBP], 00000002
00939: 0B1C             NOOP    
00940: 0B1C E9 000001F3 JMP     L000D
00941: 0B21     L000E
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
00943: 0B21 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
00944: 0B23 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
00946: 0B26 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
00947: 0B29 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
00949: 0B2C 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
00950: 0B2E 89 45 DC    MOV     DWORD PTR FFFFFFDC[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
00952: 0B31 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
00953: 0B34 89 45 E0    MOV     DWORD PTR FFFFFFE0[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
00955: 0B37 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
00956: 0B39 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
00958: 0B3C 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
00959: 0B3F 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
00961: 0B42 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
00962: 0B44 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
00964: 0B4A 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
00965: 0B4D 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
00967: 0B50 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00968: 0B56 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00969: 0B59 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
00971: 0B5C 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00972: 0B62 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
00973: 0B65 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
00975: 0B68 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00976: 0B6E 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00977: 0B71 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
00979: 0B77 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00980: 0B7D 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
00981: 0B80 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
00983: 0B86 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00984: 0B8C 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00985: 0B8F 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
00987: 0B92 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00988: 0B98 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
00989: 0B9B 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
00991: 0B9E 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
00992: 0BA4 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00993: 0BA7 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
00995: 0BAA 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
00996: 0BB0 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
00997: 0BB3 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
		
			fly5r = t0r - fly2r;
00999: 0BB6 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01000: 0BB9 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01001: 0BBC D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
01003: 0BBF D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01004: 0BC2 D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
01005: 0BC5 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
01007: 0BC8 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01008: 0BCB D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
01009: 0BCE D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
01011: 0BD1 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01012: 0BD4 D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
01013: 0BD7 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = t0i + fly2i;

			fly7r = t1r + fly1i;
01015: 0BDA D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01016: 0BDD D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
01017: 0BE0 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = t1r + fly1i;
			fly7i = t1i - fly1r;
01019: 0BE3 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01020: 0BE9 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01021: 0BEC D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = t1i - fly1r;
			t1r = t1r - fly1i;
01023: 0BEF D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01024: 0BF2 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01025: 0BF5 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = t1r - fly1i;
			t1i = t1i + fly1r;
01027: 0BF8 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01028: 0BFE D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
01029: 0C01 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = t1i + fly1r;

			fly2r = fly4r - fly6r;
01031: 0C04 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01032: 0C07 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01033: 0C0A D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
01035: 0C0D D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01036: 0C10 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01037: 0C13 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
01039: 0C16 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01040: 0C19 D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
01041: 0C1C D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
01043: 0C1F D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01044: 0C22 D8 45 98    FADD    DWORD PTR FFFFFF98[EBP]
01045: 0C25 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = fly4i + fly6i;

			fly1r = fly0r + fly3i;
01047: 0C28 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01048: 0C2B D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
01049: 0C31 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly0r + fly3i;
			fly1i = fly0i - fly3r;
01051: 0C37 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01052: 0C3A D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
01053: 0C40 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly0i - fly3r;
			fly0r = fly0r - fly3i;
01055: 0C43 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01056: 0C46 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
01057: 0C4C D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly0r - fly3i;
			fly0i = fly0i + fly3r;
01059: 0C52 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01060: 0C55 D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
01061: 0C5B D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly0i + fly3r;

			*(fly2P) = fly5r;
01063: 0C61 8B 45 9C    MOV     EAX, DWORD PTR FFFFFF9C[EBP]
01064: 0C64 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
01066: 0C66 8B 45 A0    MOV     EAX, DWORD PTR FFFFFFA0[EBP]
01067: 0C69 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly0P) = t0r;
01069: 0C6C 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
01070: 0C6F 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
01072: 0C71 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
01073: 0C74 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;
			*(fly3P) = fly7r;
01075: 0C77 8B 45 AC    MOV     EAX, DWORD PTR FFFFFFAC[EBP]
01076: 0C7A 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01078: 0C7C 8B 45 B0    MOV     EAX, DWORD PTR FFFFFFB0[EBP]
01079: 0C7F 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
			*(fly1P) = t1r;
01081: 0C82 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
01082: 0C85 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
01084: 0C87 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
01085: 0C8A 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;
			*(fly2P + FlyOffsetA) = fly2r;
01087: 0C8D 8B 7D 84    MOV     EDI, DWORD PTR FFFFFF84[EBP]
01088: 0C90 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01089: 0C96 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
01091: 0C99 8B 7D 88    MOV     EDI, DWORD PTR FFFFFF88[EBP]
01092: 0C9C 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01093: 0CA2 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;
			*(fly0P + FlyOffsetA) = fly4r;
01095: 0CA5 8B 7D 94    MOV     EDI, DWORD PTR FFFFFF94[EBP]
01096: 0CA8 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01097: 0CAE 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly4r;
			*(fly0P + FlyOffsetAIm) = fly4i;
01099: 0CB1 8B 7D 98    MOV     EDI, DWORD PTR FFFFFF98[EBP]
01100: 0CB4 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01101: 0CBA 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly4i;
			*(fly3P + FlyOffsetA) = fly1r;
01103: 0CBD 8B BD FFFFFF7CMOV   EDI, DWORD PTR FFFFFF7C[EBP]
01104: 0CC3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01105: 0CC9 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly1r;
			*(fly3P + FlyOffsetAIm) = fly1i;
01107: 0CCC 8B 7D 80    MOV     EDI, DWORD PTR FFFFFF80[EBP]
01108: 0CCF 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01109: 0CD5 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly1i;
			*(fly1P + FlyOffsetA) = fly0r;
01111: 0CD8 8B BD FFFFFF74MOV   EDI, DWORD PTR FFFFFF74[EBP]
01112: 0CDE 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01113: 0CE4 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly0r;
			*(fly1P + FlyOffsetAIm) = fly0i;
01115: 0CE7 8B BD FFFFFF78MOV   EDI, DWORD PTR FFFFFF78[EBP]
01116: 0CED 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01117: 0CF3 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly0i;

			fly0P = (fly0P + FlyOffsetB);
01119: 0CF6 03 9D FFFFFED8ADD   EBX, DWORD PTR FFFFFED8[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01121: 0CFC 03 95 FFFFFED8ADD   EDX, DWORD PTR FFFFFED8[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01123: 0D02 03 8D FFFFFED8ADD   ECX, DWORD PTR FFFFFED8[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01125: 0D08 03 B5 FFFFFED8ADD   ESI, DWORD PTR FFFFFED8[EBP]
fly3P = (fly3P + FlyOffsetB);
		};
01127: 0D0E FF 8D FFFFFEFCDEC   DWORD PTR FFFFFEFC[EBP]
01128: 0D14     L000D
01129: 0D14 83 BD FFFFFEFC00 CMP DWORD PTR FFFFFEFC[EBP], 00000000
01130: 0D1B 0F 8F FFFFFE00 JG   L000E
};

		NsameU4 >>= 1;
01132: 0D21 D1 BD FFFFFF38SAR   DWORD PTR FFFFFF38[EBP], 00000001
NsameU4 >>= 1;
		LoopN >>= 1;
01134: 0D27 D1 BD FFFFFF34SAR   DWORD PTR FFFFFF34[EBP], 00000001
LoopN >>= 1;
		NdiffU <<= 1;
01136: 0D2D D1 A5 FFFFFF58SHL   DWORD PTR FFFFFF58[EBP], 00000001
NdiffU <<= 1;
		Flyinc = Flyinc << 1;
01138: 0D33 D1 A5 FFFFFF40SHL   DWORD PTR FFFFFF40[EBP], 00000001
Flyinc = Flyinc << 1;
	}
01140: 0D39 E9 0000036F JMP     L000F
01141: 0D3E     L000C
}
	else{
		/* 1 radix 4 stage */
		IOP = ioptr;
01143: 0D3E 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
01152: 0D41 BF 00000008 MOV     EDI, 00000008
01144: 0D46 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
IOP = ioptr;

		U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
01146: 0D4C C7 45 CC 3F3504F3 MOV DWORD PTR FFFFFFCC[EBP], 3F3504F3
U3r =  0.7071067811865475244008443621; /* sqrt(0.5);	*/	
		U3i = U3r;	
01148: 0D53 C7 45 D0 3F3504F3 MOV DWORD PTR FFFFFFD0[EBP], 3F3504F3
U3i = U3r;	
		fly0P = IOP;
01150: 0D5A 89 C3       MOV     EBX, EAX
fly0P = IOP;
		fly1P = (IOP+Flyinc);
01165: 0D5C 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
01153: 0D62 89 DA       MOV     EDX, EBX
01166: 0D64 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
01154: 0D6A 01 FA       ADD     EDX, EDI
01155: 0D6C             NOOP    
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
01157: 0D6C 89 D1       MOV     ECX, EDX
01167: 0D6E 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01158: 0D74 01 F9       ADD     ECX, EDI
01159: 0D76             NOOP    
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
01161: 0D76 89 CE       MOV     ESI, ECX
01168: 0D78 89 85 FFFFFEDCMOV   DWORD PTR FFFFFEDC[EBP], EAX
01162: 0D7E 01 FE       ADD     ESI, EDI
01163: 0D80             NOOP    
fly3P = (fly2P+Flyinc);
		
			/* Butterflys		*/
			/*
			t0	-	-	t0	-	-	t0
			t1	-	-	t1	-	-	t1
			f2	-  1-	f5	-	-	f5
			f1	- -i-	f7	-	-	f7
			f4	-	-	f4	-  1-	f6
			f0	-	-	f0	-U3	-	f3
			f6	-  1-	f2	- -i-	f4
			f3	- -i-	f1	-U3a-	f2
			*/

		for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
01169: 0D80 C1 A5 FFFFFEDC02 SHL DWORD PTR FFFFFEDC[EBP], 00000002
01170: 0D87             NOOP    
01171: 0D87 E9 000002F8 JMP     L0010
01172: 0D8C     L0011
for (LoopCnt = LoopN; LoopCnt > 0 ; LoopCnt--){
			t0r = *(fly0P);
01174: 0D8C 8B 03       MOV     EAX, DWORD PTR 00000000[EBX]
01175: 0D8E 89 45 D4    MOV     DWORD PTR FFFFFFD4[EBP], EAX
t0r = *(fly0P);
			t0i = *(fly0P + 1);
01177: 0D91 8B 43 04    MOV     EAX, DWORD PTR 00000004[EBX]
01178: 0D94 89 45 D8    MOV     DWORD PTR FFFFFFD8[EBP], EAX
t0i = *(fly0P + 1);
			t1r = *(fly1P);
01180: 0D97 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
01181: 0D99 89 45 DC    MOV     DWORD PTR FFFFFFDC[EBP], EAX
t1r = *(fly1P);
			t1i = *(fly1P + 1);
01183: 0D9C 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
01184: 0D9F 89 45 E0    MOV     DWORD PTR FFFFFFE0[EBP], EAX
t1i = *(fly1P + 1);
			fly2r = *(fly2P);
01186: 0DA2 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01187: 0DA4 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
01189: 0DA7 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01190: 0DAA 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly2P + 1);
			fly1r = *(fly3P);
01192: 0DAD 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01193: 0DAF 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly3P);
			fly1i = *(fly3P + 1);
01195: 0DB5 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01196: 0DB8 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly1i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
01198: 0DBB 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01199: 0DC1 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01200: 0DC4 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
01202: 0DC7 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01203: 0DCD 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01204: 0DD0 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly0r = *(fly1P + FlyOffsetA);
01206: 0DD3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01207: 0DD9 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01208: 0DDC 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly0r = *(fly1P + FlyOffsetA);
			fly0i = *(fly1P + FlyOffsetAIm);
01210: 0DE2 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01211: 0DE8 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01212: 0DEB 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
01214: 0DF1 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01215: 0DF7 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01216: 0DFA 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
01218: 0DFD 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01219: 0E03 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01220: 0E06 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly3r = *(fly3P + FlyOffsetA);
01222: 0E09 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01223: 0E0F 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01224: 0E12 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly3P + FlyOffsetA);
			fly3i = *(fly3P + FlyOffsetAIm);
01226: 0E15 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01227: 0E1B 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01228: 0E1E 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly3P + FlyOffsetAIm);
	
			fly5r = t0r - fly2r;
01230: 0E21 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01231: 0E24 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01232: 0E27 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = t0r - fly2r;
			fly5i = t0i - fly2i;
01234: 0E2A D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01235: 0E2D D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
01236: 0E30 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = t0i - fly2i;
			t0r = t0r + fly2r;
01238: 0E33 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01239: 0E36 D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
01240: 0E39 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = t0r + fly2r;
			t0i = t0i + fly2i;
01242: 0E3C D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01243: 0E3F D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
01244: 0E42 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = t0i + fly2i;
	
			fly7r = t1r + fly1i;
01246: 0E45 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01247: 0E48 D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
01248: 0E4B D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = t1r + fly1i;
			fly7i = t1i - fly1r;
01250: 0E4E D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01251: 0E54 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01252: 0E57 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = t1i - fly1r;
			t1r = t1r - fly1i;
01254: 0E5A D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01255: 0E5D D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01256: 0E60 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = t1r - fly1i;
			t1i = t1i + fly1r;
01258: 0E63 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01259: 0E69 D8 45 E0    FADD    DWORD PTR FFFFFFE0[EBP]
01260: 0E6C D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = t1i + fly1r;
	
			fly2r = fly4r - fly6r;
01262: 0E6F D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01263: 0E72 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01264: 0E75 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly4r - fly6r;
			fly2i = fly4i - fly6i;
01266: 0E78 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01267: 0E7B D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01268: 0E7E D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly4i - fly6i;
			fly4r = fly4r + fly6r;
01270: 0E81 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01271: 0E84 D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
01272: 0E87 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = fly4r + fly6r;
			fly4i = fly4i + fly6i;
01274: 0E8A D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01275: 0E8D D8 45 98    FADD    DWORD PTR FFFFFF98[EBP]
01276: 0E90 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = fly4i + fly6i;
	
			fly1r = fly0r + fly3i;
01278: 0E93 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01279: 0E96 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
01280: 0E9C D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly0r + fly3i;
			fly1i = fly0i - fly3r;
01282: 0EA2 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01283: 0EA5 D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
01284: 0EAB D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly0i - fly3r;
			fly0r = fly0r - fly3i;
01286: 0EAE D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01287: 0EB1 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
01288: 0EB7 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly0r - fly3i;
			fly0i = fly0i + fly3r;
01290: 0EBD D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01291: 0EC0 D8 85 FFFFFF78FADD  DWORD PTR FFFFFF78[EBP]
01292: 0EC6 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly0i + fly3r;
	
			fly6r = t0r - fly4r;
01294: 0ECC D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01295: 0ECF D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01296: 0ED2 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly6r = t0r - fly4r;
			fly6i = t0i - fly4i;
01298: 0ED5 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01299: 0ED8 D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
01300: 0EDB D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly6i = t0i - fly4i;
			t0r = t0r + fly4r;
01302: 0EDE D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01303: 0EE1 D8 45 D4    FADD    DWORD PTR FFFFFFD4[EBP]
01304: 0EE4 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = t0r + fly4r;
			t0i = t0i + fly4i;
01306: 0EE7 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01307: 0EEA D8 45 D8    FADD    DWORD PTR FFFFFFD8[EBP]
01308: 0EED D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = t0i + fly4i;
	
			fly3r = fly5r + fly2i;
01310: 0EF0 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01311: 0EF3 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
01312: 0EF6 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly5r + fly2i;
			fly3i = fly5i - fly2r;
01314: 0EF9 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01315: 0EFC D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01316: 0EFF D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly5i - fly2r;
			fly5r = fly5r - fly2i;
01318: 0F02 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01319: 0F05 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01320: 0F08 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly5r - fly2i;
			fly5i = fly5i + fly2r;
01322: 0F0B D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01323: 0F0E D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01324: 0F11 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly5i + fly2r;
	
			fly4r = t1r - U3r * fly0r;
01326: 0F14 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01327: 0F1A D8 0D 00000000 FMUL DWORD PTR .data+00000500
01328: 0F20 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
01329: 0F23 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r + U3i * fly0i;
01331: 0F26 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01332: 0F2C D8 0D 00000000 FMUL DWORD PTR .data+00000504
01333: 0F32 D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
01334: 0F35 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = fly4r + U3i * fly0i;
			fly4i = t1i - U3i * fly0r;
01336: 0F38 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01337: 0F3E D8 0D 00000000 FMUL DWORD PTR .data+00000508
01338: 0F44 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01339: 0F47 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = t1i - U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
01341: 0F4A D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01342: 0F50 D8 0D 00000000 FMUL DWORD PTR .data+0000050c
01343: 0F56 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01344: 0F59 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
01346: 0F5C D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01347: 0F5F D8 0D 00000000 FMUL DWORD PTR .data+00000510
01348: 0F65 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
01349: 0F68 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
01351: 0F6B D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01352: 0F6E D8 0D 00000000 FMUL DWORD PTR .data+00000514
01353: 0F74 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
01354: 0F77 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = scale * t1i - fly4i;
	
			fly2r = fly7r + U3i * fly1r;
01356: 0F7A D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01357: 0F80 D8 0D 00000000 FMUL DWORD PTR .data+00000518
01358: 0F86 D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
01359: 0F89 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly7r + U3i * fly1r;
			fly2r = fly2r + U3r * fly1i;
01361: 0F8C D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01362: 0F8F D8 0D 00000000 FMUL DWORD PTR .data+0000051c
01363: 0F95 D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
01364: 0F98 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly2r + U3r * fly1i;
			fly2i = fly7i - U3r * fly1r;
01366: 0F9B D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01367: 0FA1 D8 0D 00000000 FMUL DWORD PTR .data+00000520
01368: 0FA7 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
01369: 0FAA D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly7i - U3r * fly1r;
			fly2i = fly2i + U3i * fly1i;
01371: 0FAD D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01372: 0FB0 D8 0D 00000000 FMUL DWORD PTR .data+00000524
01373: 0FB6 D8 45 88    FADD    DWORD PTR FFFFFF88[EBP]
01374: 0FB9 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly2i + U3i * fly1i;
			fly7r = scale * fly7r - fly2r;
01376: 0FBC D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01377: 0FBF D8 0D 00000000 FMUL DWORD PTR .data+00000528
01378: 0FC5 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01379: 0FC8 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = scale * fly7r - fly2r;
			fly7i = scale * fly7i - fly2i;
01381: 0FCB D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01382: 0FCE D8 0D 00000000 FMUL DWORD PTR .data+0000052c
01383: 0FD4 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01384: 0FD7 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = scale * fly7i - fly2i;
	
			*(fly0P + FlyOffsetA) = fly6r;
01386: 0FDA 8B 7D A4    MOV     EDI, DWORD PTR FFFFFFA4[EBP]
01387: 0FDD 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01388: 0FE3 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
01390: 0FE6 8B 7D A8    MOV     EDI, DWORD PTR FFFFFFA8[EBP]
01391: 0FE9 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01392: 0FEF 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
01394: 0FF2 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
01395: 0FF5 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
01397: 0FF7 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
01398: 0FFA 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;
			*(fly2P + FlyOffsetA) = fly3r;
01400: 0FFD 8B 7D 8C    MOV     EDI, DWORD PTR FFFFFF8C[EBP]
01401: 1000 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01402: 1006 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly3r;
			*(fly2P + FlyOffsetAIm) = fly3i;
01404: 1009 8B 7D 90    MOV     EDI, DWORD PTR FFFFFF90[EBP]
01405: 100C 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01406: 1012 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly3i;
			*(fly2P) = fly5r;
01408: 1015 8B 45 9C    MOV     EAX, DWORD PTR FFFFFF9C[EBP]
01409: 1018 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly5r;
			*(fly2P + 1) = fly5i;
01411: 101A 8B 45 A0    MOV     EAX, DWORD PTR FFFFFFA0[EBP]
01412: 101D 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly5i;
			*(fly1P + FlyOffsetA) = fly4r;
01414: 1020 8B 7D 94    MOV     EDI, DWORD PTR FFFFFF94[EBP]
01415: 1023 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01416: 1029 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
01418: 102C 8B 7D 98    MOV     EDI, DWORD PTR FFFFFF98[EBP]
01419: 102F 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01420: 1035 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
01422: 1038 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
01423: 103B 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
01425: 103D 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
01426: 1040 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;
			*(fly3P + FlyOffsetA) = fly2r;
01428: 1043 8B 7D 84    MOV     EDI, DWORD PTR FFFFFF84[EBP]
01429: 1046 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01430: 104C 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly2r;
			*(fly3P + FlyOffsetAIm) = fly2i;
01432: 104F 8B 7D 88    MOV     EDI, DWORD PTR FFFFFF88[EBP]
01433: 1052 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01434: 1058 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly2i;
			*(fly3P) = fly7r;
01436: 105B 8B 45 AC    MOV     EAX, DWORD PTR FFFFFFAC[EBP]
01437: 105E 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
01439: 1060 8B 45 B0    MOV     EAX, DWORD PTR FFFFFFB0[EBP]
01440: 1063 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;
		
			fly0P = (fly0P + FlyOffsetB);
01442: 1066 03 9D FFFFFEDCADD   EBX, DWORD PTR FFFFFEDC[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
01444: 106C 03 95 FFFFFEDCADD   EDX, DWORD PTR FFFFFEDC[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
01446: 1072 03 8D FFFFFEDCADD   ECX, DWORD PTR FFFFFEDC[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
01448: 1078 03 B5 FFFFFEDCADD   ESI, DWORD PTR FFFFFEDC[EBP]
fly3P = (fly3P + FlyOffsetB);

		};
01450: 107E FF 8D FFFFFEFCDEC   DWORD PTR FFFFFEFC[EBP]
01451: 1084     L0010
01452: 1084 83 BD FFFFFEFC00 CMP DWORD PTR FFFFFEFC[EBP], 00000000
01453: 108B 0F 8F FFFFFCFB JG   L0011
};

		NsameU4 >>= 2;
01455: 1091 C1 BD FFFFFF3802 SAR DWORD PTR FFFFFF38[EBP], 00000002
NsameU4 >>= 2;
		LoopN >>= 2;
01457: 1098 C1 BD FFFFFF3402 SAR DWORD PTR FFFFFF34[EBP], 00000002
LoopN >>= 2;
		NdiffU <<= 2;
01459: 109F C1 A5 FFFFFF5802 SHL DWORD PTR FFFFFF58[EBP], 00000002
NdiffU <<= 2;
		Flyinc = Flyinc << 2;
01461: 10A6 C1 A5 FFFFFF4002 SHL DWORD PTR FFFFFF40[EBP], 00000002
Flyinc = Flyinc << 2;
	};
01463: 10AD     L000F
};
};
01465: 10AD     L000B
};

NsameU2 = NsameU4 >> 1;
01467: 10AD 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
01468: 10B3 89 85 FFFFFF14MOV   DWORD PTR FFFFFF14[EBP], EAX
01469: 10B9 D1 BD FFFFFF14SAR   DWORD PTR FFFFFF14[EBP], 00000001
01470: 10BF             NOOP    
NsameU2 = NsameU4 >> 1;
NsameU1 = NsameU2 >> 1;
01472: 10BF 8B 85 FFFFFF14MOV   EAX, DWORD PTR FFFFFF14[EBP]
01473: 10C5 89 85 FFFFFF28MOV   DWORD PTR FFFFFF28[EBP], EAX
01474: 10CB D1 BD FFFFFF28SAR   DWORD PTR FFFFFF28[EBP], 00000001
01475: 10D1             NOOP    
NsameU1 = NsameU2 >> 1;
Flyinc <<= 1;
01477: 10D1 D1 A5 FFFFFF40SHL   DWORD PTR FFFFFF40[EBP], 00000001
Flyinc <<= 1;
FlyOffsetA =  Flyinc << 2;
01479: 10D7 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
01480: 10DD 89 85 FFFFFED4MOV   DWORD PTR FFFFFED4[EBP], EAX
01481: 10E3 C1 A5 FFFFFED402 SHL DWORD PTR FFFFFED4[EBP], 00000002
01482: 10EA             NOOP    
FlyOffsetA =  Flyinc << 2;
FlyOffsetB =  FlyOffsetA << 1;
01484: 10EA 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01485: 10F0 89 85 FFFFFEECMOV   DWORD PTR FFFFFEEC[EBP], EAX
01486: 10F6 D1 A5 FFFFFEECSHL   DWORD PTR FFFFFEEC[EBP], 00000001
01487: 10FC             NOOP    
FlyOffsetB =  FlyOffsetA << 1;
FlyOffsetAIm =  FlyOffsetA + 1;
01489: 10FC 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01490: 1102 89 85 FFFFFEC8MOV   DWORD PTR FFFFFEC8[EBP], EAX
01491: 1108 83 85 FFFFFEC801 ADD DWORD PTR FFFFFEC8[EBP], 00000001
01492: 110F             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
FlyOffsetBIm =  FlyOffsetB + 1;
01494: 110F 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01495: 1115 89 85 FFFFFEF0MOV   DWORD PTR FFFFFEF0[EBP], EAX
01496: 111B 83 85 FFFFFEF001 ADD DWORD PTR FFFFFEF0[EBP], 00000001
01497: 1122             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
LoopN >>= 1;
01499: 1122 D1 BD FFFFFF34SAR   DWORD PTR FFFFFF34[EBP], 00000001
LoopN >>= 1;

/*   ****** RADIX 8 Stages	*/
for (stage = stage<<1; stage > 0 ; stage--){
01501: 1128 D1 A5 FFFFFF3CSHL   DWORD PTR FFFFFF3C[EBP], 00000001
01502: 112E E9 00000DF5 JMP     L0012
01503: 1133     L0013
for (stage = stage<<1; stage > 0 ; stage--){

	/* an fft stage is done in two parts to ease use of the single quadrant cos table	*/

/*	fftcalc1(iobuf, Utbl, N, NdiffU, LoopN);	*/
	if(!(stage&1)){
01505: 1133 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01506: 1139 89 85 FFFFFF30MOV   DWORD PTR FFFFFF30[EBP], EAX
01507: 113F 81 A5 FFFFFF3000000001 AND DWORD PTR FFFFFF30[EBP], 00000001
01508: 1149             NOOP    
01509: 1149 83 BD FFFFFF3000 CMP DWORD PTR FFFFFF30[EBP], 00000000
01510: 1150 0F 85 000000CC JNE  L0014
if(!(stage&1)){
		U0rP = &Utbl[0];
01512: 1156 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01536: 1159 BB 00000008 MOV     EBX, 00000008
01513: 115E 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
U0rP = &Utbl[0];
		U0iP = &Utbl[Ntbl[M-1]];	/* for RIFFT */
01515: 1164 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01516: 1167 8B 04 8D FFFFFFFC MOV EAX, DWORD PTR ?Ntbl@@3PBJB+FFFFFFFC[ECX*4]
01517: 116E 89 85 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], EAX
01518: 1174 C1 A5 FFFFFF1802 SHL DWORD PTR FFFFFF18[EBP], 00000002
01519: 117B 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
01520: 1181 03 45 14    ADD     EAX, DWORD PTR 00000014[EBP]
01521: 1184 89 85 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], EAX
01522: 118A             NOOP    
U0iP = &Utbl[Ntbl[M-1]];	/* for RIFFT */
		U1rP = U0rP;
01524: 118A 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01525: 118D 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
U1rP = U0rP;
		U1iP = U0iP;
01527: 1193 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
01528: 1199 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
U1iP = U0iP;
		U2rP = U0rP;
01530: 119F 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01531: 11A2 89 85 FFFFFF48MOV   DWORD PTR FFFFFF48[EBP], EAX
U2rP = U0rP;
		U2iP = U0iP;
01533: 11A8 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
01534: 11AE 89 85 FFFFFF54MOV   DWORD PTR FFFFFF54[EBP], EAX
U2iP = U0iP;
		U3offset = (Ntbl[M+1]) / 8;	/* for RIFFT */
01537: 11B4 8B 4D 0C    MOV     ECX, DWORD PTR 0000000C[EBP]
01538: 11B7 8B 04 8D 00000004 MOV EAX, DWORD PTR ?Ntbl@@3PBJB+00000004[ECX*4]
01539: 11BE 99          CDQ     
01540: 11BF F7 FB       IDIV    EBX
01541: 11C1 89 85 FFFFFF44MOV   DWORD PTR FFFFFF44[EBP], EAX
01542: 11C7             NOOP    
U3offset = (Ntbl[M+1]) / 8;	/* for RIFFT */

		IOP = ioptr;
01544: 11C7 8B 45 08    MOV     EAX, DWORD PTR 00000008[EBP]
01545: 11CA 89 85 FFFFFF2CMOV   DWORD PTR FFFFFF2C[EBP], EAX
IOP = ioptr;
	
		U0r =  *U0rP,
01547: 11D0 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01548: 11D3 D9 00       FLD     DWORD PTR 00000000[EAX]
01549: 11D5 D9 55 EC    FST     DWORD PTR FFFFFFEC[EBP]
01550: 11D8 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
01551: 11DB 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
01552: 11E1 D9 00       FLD     DWORD PTR 00000000[EAX]
01553: 11E3 D9 55 F0    FST     DWORD PTR FFFFFFF0[EBP]
01554: 11E6 D9 5D B8    FSTP    DWORD PTR FFFFFFB8[EBP]
U0r =  *U0rP,
		U0i =  *U0iP;
		U1r =  *U1rP,
01556: 11E9 8B 45 EC    MOV     EAX, DWORD PTR FFFFFFEC[EBP]
01557: 11EC 89 45 BC    MOV     DWORD PTR FFFFFFBC[EBP], EAX
01558: 11EF 8B 45 F0    MOV     EAX, DWORD PTR FFFFFFF0[EBP]
01559: 11F2 89 45 C0    MOV     DWORD PTR FFFFFFC0[EBP], EAX
U1r =  *U1rP,
		U1i =  *U1iP;
		U2r =  *U2rP,
01561: 11F5 8B 45 EC    MOV     EAX, DWORD PTR FFFFFFEC[EBP]
01562: 11F8 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
01563: 11FB 8B 45 F0    MOV     EAX, DWORD PTR FFFFFFF0[EBP]
01564: 11FE 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U2r =  *U2rP,
		U2i =  *U2iP;
		U3r =  *( U2rP + U3offset);
01566: 1201 8B 8D FFFFFF44MOV   ECX, DWORD PTR FFFFFF44[EBP]
01567: 1207 8B 45 14    MOV     EAX, DWORD PTR 00000014[EBP]
01571: 120A 89 CA       MOV     EDX, ECX
01568: 120C 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
01572: 120F C1 E2 02    SHL     EDX, 00000002
01569: 1212 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
U3r =  *( U2rP + U3offset);
		U3i =  *( U2iP - U3offset);
01573: 1215 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
01574: 121B 29 D0       SUB     EAX, EDX
01575: 121D 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01576: 121F 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
U3i =  *( U2iP - U3offset);
	}
01578: 1222     L0014
}
	
	fly0P = IOP;
01580: 1222 8B 9D FFFFFF2CMOV   EBX, DWORD PTR FFFFFF2C[EBP]
fly0P = IOP;
	fly1P = (IOP+Flyinc);
01582: 1228 8B BD FFFFFF40MOV   EDI, DWORD PTR FFFFFF40[EBP]
01585: 122E 8B 95 FFFFFF2CMOV   EDX, DWORD PTR FFFFFF2C[EBP]
01583: 1234 C1 E7 02    SHL     EDI, 00000002
01584: 1237             NOOP    
01586: 1237 01 FA       ADD     EDX, EDI
01587: 1239             NOOP    
fly1P = (IOP+Flyinc);
	fly2P = (fly1P+Flyinc);
01589: 1239 89 D1       MOV     ECX, EDX
01597: 123B 8B 85 FFFFFF58MOV   EAX, DWORD PTR FFFFFF58[EBP]
01590: 1241 01 F9       ADD     ECX, EDI
01591: 1243             NOOP    
fly2P = (fly1P+Flyinc);
	fly3P = (fly2P+Flyinc);
01593: 1243 89 CE       MOV     ESI, ECX
01598: 1245 89 85 FFFFFF04MOV   DWORD PTR FFFFFF04[EBP], EAX
01594: 124B 01 FE       ADD     ESI, EDI
01595: 124D             NOOP    
fly3P = (fly2P+Flyinc);

	for (diffUcnt = (NdiffU)>>1; diffUcnt > 0; diffUcnt--){
01599: 124D D1 BD FFFFFF04SAR   DWORD PTR FFFFFF04[EBP], 00000001
01600: 1253             NOOP    
01601: 1253 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
01602: 1259 89 85 FFFFFF08MOV   DWORD PTR FFFFFF08[EBP], EAX
01603: 125F C1 A5 FFFFFF0802 SHL DWORD PTR FFFFFF08[EBP], 00000002
01604: 1266             NOOP    
01605: 1266 8B 85 FFFFFF14MOV   EAX, DWORD PTR FFFFFF14[EBP]
01606: 126C 89 85 FFFFFF0CMOV   DWORD PTR FFFFFF0C[EBP], EAX
01607: 1272 C1 A5 FFFFFF0C02 SHL DWORD PTR FFFFFF0C[EBP], 00000002
01608: 1279             NOOP    
01609: 1279 8B 85 FFFFFF3CMOV   EAX, DWORD PTR FFFFFF3C[EBP]
01610: 127F 89 85 FFFFFF24MOV   DWORD PTR FFFFFF24[EBP], EAX
01611: 1285 81 A5 FFFFFF2400000001 AND DWORD PTR FFFFFF24[EBP], 00000001
01612: 128F             NOOP    
01613: 128F 8B 85 FFFFFF28MOV   EAX, DWORD PTR FFFFFF28[EBP]
01614: 1295 89 85 FFFFFF10MOV   DWORD PTR FFFFFF10[EBP], EAX
01615: 129B C1 A5 FFFFFF1002 SHL DWORD PTR FFFFFF10[EBP], 00000002
01616: 12A2             NOOP    
01617: 12A2 8B 85 FFFFFF44MOV   EAX, DWORD PTR FFFFFF44[EBP]
01618: 12A8 89 85 FFFFFF1CMOV   DWORD PTR FFFFFF1C[EBP], EAX
01619: 12AE C1 A5 FFFFFF1C02 SHL DWORD PTR FFFFFF1C[EBP], 00000002
01620: 12B5             NOOP    
01621: 12B5 8B 85 FFFFFF40MOV   EAX, DWORD PTR FFFFFF40[EBP]
01622: 12BB 89 85 FFFFFF00MOV   DWORD PTR FFFFFF00[EBP], EAX
01623: 12C1 C1 A5 FFFFFF0002 SHL DWORD PTR FFFFFF00[EBP], 00000002
01624: 12C8             NOOP    
01625: 12C8 E9 00000BD3 JMP     L0015
01626: 12CD     L0016
for (diffUcnt = (NdiffU)>>1; diffUcnt > 0; diffUcnt--){

			/* Butterflys		*/
			/*
			f0	-	-	t0	-	-	t0	-	-	t0
			f1	-U0	-	t1	-	-	t1	-	-	t1
			f2	-	-	f2	-U1	-	f5	-	-	f3
			f3	-U0	-	f1	-U1a-	f7	-	-	f7
			f4	-	-	f4	-	-	f4	-U2	-	f6
			f5	-U0	-	f0	-	-	f0	-U3	-	f4
			f6	-	-	f6	-U1	-	f2	-U2a-	f2
			f7	-U0	-	f3	-U1a-	f1	-U3a-	f5
			*/
		
		fly0r = *(IOP);
01628: 12CD 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
01629: 12D3 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
01630: 12D5 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly0r = *(IOP);
		fly0i = *(IOP+1);
01632: 12DB 8B 85 FFFFFF2CMOV   EAX, DWORD PTR FFFFFF2C[EBP]
01633: 12E1 8B 40 04    MOV     EAX, DWORD PTR 00000004[EAX]
01634: 12E4 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(IOP+1);
		fly1r = *(fly1P);
01636: 12EA 8B 02       MOV     EAX, DWORD PTR 00000000[EDX]
01637: 12EC 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly1P);
		fly1i = *(fly1P+1);
01639: 12F2 8B 42 04    MOV     EAX, DWORD PTR 00000004[EDX]
01640: 12F5 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly1i = *(fly1P+1);

		for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
01642: 12F8 8B 85 FFFFFF34MOV   EAX, DWORD PTR FFFFFF34[EBP]
01643: 12FE 89 85 FFFFFEFCMOV   DWORD PTR FFFFFEFC[EBP], EAX
01644: 1304 83 85 FFFFFEFCFF ADD DWORD PTR FFFFFEFC[EBP], FFFFFFFF
01645: 130B             NOOP    
01646: 130B 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
01647: 1311 89 85 FFFFFEE0MOV   DWORD PTR FFFFFEE0[EBP], EAX
01648: 1317 C1 A5 FFFFFEE002 SHL DWORD PTR FFFFFEE0[EBP], 00000002
01649: 131E             NOOP    
01650: 131E E9 0000056D JMP     L0017
01651: 1323     L0018
for (LoopCnt = LoopN-1; LoopCnt > 0 ; LoopCnt--){
	
			fly2r = *(fly2P);
01653: 1323 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
01654: 1325 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly2P);
			fly2i = *(fly2P + 1);
01656: 1328 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
01657: 132B 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly2P + 1);
			fly3r = *(fly3P);
01659: 132E 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
01660: 1330 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly3P);
			fly3i = *(fly3P + 1);
01662: 1333 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
01663: 1336 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly3P + 1);
			fly4r = *(fly0P + FlyOffsetA);
01665: 1339 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01666: 133F 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01667: 1342 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
			fly4i = *(fly0P + FlyOffsetAIm);
01669: 1345 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01670: 134B 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
01671: 134E 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
			fly5r = *(fly1P + FlyOffsetA);
01673: 1351 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01674: 1357 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01675: 135A 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
			fly5i = *(fly1P + FlyOffsetAIm);
01677: 135D 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01678: 1363 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
01679: 1366 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
			fly6r = *(fly2P + FlyOffsetA);
01681: 1369 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01682: 136F 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01683: 1372 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
			fly6i = *(fly2P + FlyOffsetAIm);
01685: 1375 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01686: 137B 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
01687: 137E 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
			fly7r = *(fly3P + FlyOffsetA);
01689: 1381 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
01690: 1387 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01691: 138A 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
			fly7i = *(fly3P + FlyOffsetAIm);
01693: 138D 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
01694: 1393 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
01695: 1396 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

			t1r = fly0r - U0r * fly1r;
01697: 1399 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01698: 139F D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01699: 13A2 D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
01700: 13A8 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = fly0r - U0r * fly1r;
			t1r = t1r + U0i * fly1i;
01702: 13AB D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01703: 13AE D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01704: 13B1 D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
01705: 13B4 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = t1r + U0i * fly1i;
			t1i = fly0i - U0i * fly1r;
01707: 13B7 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01708: 13BD D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01709: 13C0 D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
01710: 13C6 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = fly0i - U0i * fly1r;
			t1i = t1i - U0r * fly1i;
01712: 13C9 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01713: 13CC D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01714: 13CF D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01715: 13D2 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = t1i - U0r * fly1i;
			t0r = scale * fly0r - t1r;
01717: 13D5 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01718: 13DB D8 0D 00000000 FMUL DWORD PTR .data+00000530
01719: 13E1 D8 65 DC    FSUB    DWORD PTR FFFFFFDC[EBP]
01720: 13E4 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = scale * fly0r - t1r;
			t0i = scale * fly0i - t1i;
01722: 13E7 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01723: 13ED D8 0D 00000000 FMUL DWORD PTR .data+00000534
01724: 13F3 D8 65 E0    FSUB    DWORD PTR FFFFFFE0[EBP]
01725: 13F6 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = scale * fly0i - t1i;
	
			fly1r = fly2r - U0r * fly3r;
01727: 13F9 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01728: 13FC D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01729: 13FF D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
01730: 1402 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly2r - U0r * fly3r;
			fly1r = fly1r + U0i * fly3i;
01732: 1408 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01733: 140B D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01734: 140E D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
01735: 1414 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly1r + U0i * fly3i;
			fly1i = fly2i - U0i * fly3r;
01737: 141A D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01738: 141D D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01739: 1420 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01740: 1423 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly2i - U0i * fly3r;
			fly1i = fly1i - U0r * fly3i;
01742: 1426 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01743: 1429 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01744: 142C D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
01745: 142F D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly1i - U0r * fly3i;
			fly2r = scale * fly2r - fly1r;
01747: 1432 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01748: 1435 D8 0D 00000000 FMUL DWORD PTR .data+00000538
01749: 143B D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01750: 1441 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = scale * fly2r - fly1r;
			fly2i = scale * fly2i - fly1i;
01752: 1444 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01753: 1447 D8 0D 00000000 FMUL DWORD PTR .data+0000053c
01754: 144D D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01755: 1450 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = scale * fly2i - fly1i;
	
			fly0r = fly4r - U0r * fly5r;
01757: 1453 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01758: 1456 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01759: 1459 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01760: 145C D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly4r - U0r * fly5r;
			fly0r = fly0r + U0i * fly5i;
01762: 1462 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01763: 1465 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01764: 1468 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
01765: 146E D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly0r + U0i * fly5i;
			fly0i = fly4i - U0i * fly5r;
01767: 1474 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01768: 1477 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01769: 147A D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01770: 147D D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly4i - U0i * fly5r;
			fly0i = fly0i - U0r * fly5i;
01772: 1483 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01773: 1486 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01774: 1489 D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
01775: 148F D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly0i - U0r * fly5i;
			fly4r = scale * fly4r - fly0r;
01777: 1495 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01778: 1498 D8 0D 00000000 FMUL DWORD PTR .data+00000540
01779: 149E D8 A5 FFFFFF74FSUB  DWORD PTR FFFFFF74[EBP]
01780: 14A4 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = scale * fly4r - fly0r;
			fly4i = scale * fly4i - fly0i;
01782: 14A7 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01783: 14AA D8 0D 00000000 FMUL DWORD PTR .data+00000544
01784: 14B0 D8 A5 FFFFFF78FSUB  DWORD PTR FFFFFF78[EBP]
01785: 14B6 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = scale * fly4i - fly0i;
	
			fly3r = fly6r - U0r * fly7r;
01787: 14B9 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01788: 14BC D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01789: 14BF D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
01790: 14C2 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly6r - U0r * fly7r;
			fly3r = fly3r + U0i * fly7i;
01792: 14C5 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01793: 14C8 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01794: 14CB D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
01795: 14CE D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly3r + U0i * fly7i;
			fly3i = fly6i - U0i * fly7r;
01797: 14D1 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
01798: 14D4 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
01799: 14D7 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
01800: 14DA D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly6i - U0i * fly7r;
			fly3i = fly3i - U0r * fly7i;
01802: 14DD D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
01803: 14E0 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
01804: 14E3 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01805: 14E6 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly3i - U0r * fly7i;
			fly6r = scale * fly6r - fly3r;
01807: 14E9 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01808: 14EC D8 0D 00000000 FMUL DWORD PTR .data+00000548
01809: 14F2 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
01810: 14F5 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly6r = scale * fly6r - fly3r;
			fly6i = scale * fly6i - fly3i;
01812: 14F8 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01813: 14FB D8 0D 00000000 FMUL DWORD PTR .data+0000054c
01814: 1501 D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
01815: 1504 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly6i = scale * fly6i - fly3i;
	

			fly5r = t0r - U1r * fly2r;
01817: 1507 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01818: 150A D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01819: 150D D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01820: 1510 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = t0r - U1r * fly2r;
			fly5r = fly5r + U1i * fly2i;
01822: 1513 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01823: 1516 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01824: 1519 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
01825: 151C D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly5r + U1i * fly2i;
			fly5i = t0i - U1i * fly2r;
01827: 151F D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01828: 1522 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01829: 1525 D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
01830: 1528 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = t0i - U1i * fly2r;
			fly5i = fly5i - U1r * fly2i;
01832: 152B D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01833: 152E D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01834: 1531 D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
01835: 1534 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly5i - U1r * fly2i;
			t0r = scale * t0r - fly5r;
01837: 1537 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
01838: 153A D8 0D 00000000 FMUL DWORD PTR .data+00000550
01839: 1540 D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
01840: 1543 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = scale * t0r - fly5r;
			t0i = scale * t0i - fly5i;
01842: 1546 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
01843: 1549 D8 0D 00000000 FMUL DWORD PTR .data+00000554
01844: 154F D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
01845: 1552 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = scale * t0i - fly5i;

			fly7r = t1r + U1i * fly1r;
01847: 1555 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01848: 155B D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01849: 155E D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
01850: 1561 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = t1r + U1i * fly1r;
			fly7r = fly7r + U1r * fly1i;
01852: 1564 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01853: 1567 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01854: 156A D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
01855: 156D D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = fly7r + U1r * fly1i;
			fly7i = t1i - U1r * fly1r;
01857: 1570 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
01858: 1576 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01859: 1579 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
01860: 157C D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = t1i - U1r * fly1r;
			fly7i = fly7i + U1i * fly1i;
01862: 157F D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
01863: 1582 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01864: 1585 D8 45 B0    FADD    DWORD PTR FFFFFFB0[EBP]
01865: 1588 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = fly7i + U1i * fly1i;
			t1r = scale * t1r - fly7r;
01867: 158B D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
01868: 158E D8 0D 00000000 FMUL DWORD PTR .data+00000558
01869: 1594 D8 65 AC    FSUB    DWORD PTR FFFFFFAC[EBP]
01870: 1597 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = scale * t1r - fly7r;
			t1i = scale * t1i - fly7i;
01872: 159A D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
01873: 159D D8 0D 00000000 FMUL DWORD PTR .data+0000055c
01874: 15A3 D8 65 B0    FSUB    DWORD PTR FFFFFFB0[EBP]
01875: 15A6 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = scale * t1i - fly7i;

			fly2r = fly4r - U1r * fly6r;
01877: 15A9 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01878: 15AC D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01879: 15AF D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
01880: 15B2 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly4r - U1r * fly6r;
			fly2r = fly2r + U1i * fly6i;
01882: 15B5 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01883: 15B8 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01884: 15BB D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
01885: 15BE D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly2r + U1i * fly6i;
			fly2i = fly4i - U1i * fly6r;
01887: 15C1 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
01888: 15C4 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01889: 15C7 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
01890: 15CA D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly4i - U1i * fly6r;
			fly2i = fly2i - U1r * fly6i;
01892: 15CD D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
01893: 15D0 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01894: 15D3 D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
01895: 15D6 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly2i - U1r * fly6i;
			fly4r = scale * fly4r - fly2r;
01897: 15D9 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01898: 15DC D8 0D 00000000 FMUL DWORD PTR .data+00000560
01899: 15E2 D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
01900: 15E5 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = scale * fly4r - fly2r;
			fly4i = scale * fly4i - fly2i;
01902: 15E8 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01903: 15EB D8 0D 00000000 FMUL DWORD PTR .data+00000564
01904: 15F1 D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
01905: 15F4 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = scale * fly4i - fly2i;

			fly1r = fly0r + U1i * fly3r;
01907: 15F7 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01908: 15FA D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01909: 15FD D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
01910: 1603 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly0r + U1i * fly3r;
			fly1r = fly1r + U1r * fly3i;
01912: 1609 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01913: 160C D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01914: 160F D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
01915: 1615 D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly1r + U1r * fly3i;
			fly1i = fly0i - U1r * fly3r;
01917: 161B D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
01918: 161E D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
01919: 1621 D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
01920: 1627 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly0i - U1r * fly3r;
			fly1i = fly1i + U1i * fly3i;
01922: 162A D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
01923: 162D D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
01924: 1630 D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
01925: 1633 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly1i + U1i * fly3i;
			fly0r = scale * fly0r - fly1r;
01927: 1636 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01928: 163C D8 0D 00000000 FMUL DWORD PTR .data+00000568
01929: 1642 D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
01930: 1648 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = scale * fly0r - fly1r;
			fly0i = scale * fly0i - fly1i;
01932: 164E D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
01933: 1654 D8 0D 00000000 FMUL DWORD PTR .data+0000056c
01934: 165A D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
01935: 165D D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = scale * fly0i - fly1i;

			fly6r = t0r - U2r * fly4r;
01937: 1663 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01938: 1666 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01939: 1669 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
01940: 166C D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly6r = t0r - U2r * fly4r;
			fly6r = fly6r + U2i * fly4i;
01942: 166F D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01943: 1672 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01944: 1675 D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
01945: 1678 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly6r = fly6r + U2i * fly4i;
			fly6i = t0i - U2i * fly4r;
01947: 167B D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
01948: 167E D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01949: 1681 D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
01950: 1684 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly6i = t0i - U2i * fly4r;
			fly6i = fly6i - U2r * fly4i;
01952: 1687 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
01953: 168A D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01954: 168D D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
01955: 1690 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly6i = fly6i - U2r * fly4i;
			t0r = scale * t0r - fly6r;
01957: 1693 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
01958: 1696 D8 0D 00000000 FMUL DWORD PTR .data+00000570
01959: 169C D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
01960: 169F D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = scale * t0r - fly6r;
			t0i = scale * t0i - fly6i;
01962: 16A2 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
01963: 16A5 D8 0D 00000000 FMUL DWORD PTR .data+00000574
01964: 16AB D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
01965: 16AE D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = scale * t0i - fly6i;

			fly3r = fly5r - U2i * fly2r;
01967: 16B1 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01968: 16B4 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01969: 16B7 D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
01970: 16BA D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly5r - U2i * fly2r;
			fly3r = fly3r - U2r * fly2i;
01972: 16BD D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01973: 16C0 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01974: 16C3 D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
01975: 16C6 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly3r - U2r * fly2i;
			fly3i = fly5i + U2r * fly2r;
01977: 16C9 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
01978: 16CC D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
01979: 16CF D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
01980: 16D2 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly5i + U2r * fly2r;
			fly3i = fly3i - U2i * fly2i;
01982: 16D5 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
01983: 16D8 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
01984: 16DB D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
01985: 16DE D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly3i - U2i * fly2i;
			fly2r = scale * fly5r - fly3r;
01987: 16E1 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
01988: 16E4 D8 0D 00000000 FMUL DWORD PTR .data+00000578
01989: 16EA D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
01990: 16ED D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = scale * fly5r - fly3r;
			fly2i = scale * fly5i - fly3i;
01992: 16F0 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
01993: 16F3 D8 0D 00000000 FMUL DWORD PTR .data+0000057c
01994: 16F9 D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
01995: 16FC D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = scale * fly5i - fly3i;

			fly4r = t1r - U3r * fly0r;
01997: 16FF D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
01998: 1705 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
01999: 1708 D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
02000: 170B D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = t1r - U3r * fly0r;
			fly4r = fly4r + U3i * fly0i;
02002: 170E D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02003: 1714 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02004: 1717 D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
02005: 171A D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = fly4r + U3i * fly0i;
			fly4i = t1i - U3i * fly0r;
02007: 171D D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02008: 1723 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02009: 1726 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
02010: 1729 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = t1i - U3i * fly0r;
			fly4i = fly4i - U3r * fly0i;
02012: 172C D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02013: 1732 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02014: 1735 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
02015: 1738 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = fly4i - U3r * fly0i;
			t1r = scale * t1r - fly4r;
02017: 173B D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
02018: 173E D8 0D 00000000 FMUL DWORD PTR .data+00000580
02019: 1744 D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
02020: 1747 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = scale * t1r - fly4r;
			t1i = scale * t1i - fly4i;
02022: 174A D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
02023: 174D D8 0D 00000000 FMUL DWORD PTR .data+00000584
02024: 1753 D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
02025: 1756 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = scale * t1i - fly4i;

			fly5r = fly7r + U3i * fly1r;
02027: 1759 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02028: 175F D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02029: 1762 D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
02030: 1765 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly7r + U3i * fly1r;
			fly5r = fly5r + U3r * fly1i;
02032: 1768 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02033: 176B D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02034: 176E D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
02035: 1771 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly5r + U3r * fly1i;
			fly5i = fly7i - U3r * fly1r;
02037: 1774 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02038: 177A D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02039: 177D D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
02040: 1780 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly7i - U3r * fly1r;
			fly5i = fly5i + U3i * fly1i;
02042: 1783 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02043: 1786 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02044: 1789 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
02045: 178C D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly5i + U3i * fly1i;
			fly7r = scale * fly7r - fly5r;
02047: 178F D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
02048: 1792 D8 0D 00000000 FMUL DWORD PTR .data+00000588
02049: 1798 D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
02050: 179B D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = scale * fly7r - fly5r;
			fly7i = scale * fly7i - fly5i;
02052: 179E D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
02053: 17A1 D8 0D 00000000 FMUL DWORD PTR .data+0000058c
02054: 17A7 D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
02055: 17AA D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = scale * fly7i - fly5i;

			*(fly0P + FlyOffsetA) = fly6r;
02057: 17AD 8B 7D A4    MOV     EDI, DWORD PTR FFFFFFA4[EBP]
02058: 17B0 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02059: 17B6 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
			*(fly0P + FlyOffsetAIm) = fly6i;
02061: 17B9 8B 7D A8    MOV     EDI, DWORD PTR FFFFFFA8[EBP]
02062: 17BC 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02063: 17C2 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
			*(fly0P) = t0r;
02065: 17C5 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
02066: 17C8 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
			*(fly0P + 1) = t0i;
02068: 17CA 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
02069: 17CD 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;
			*(fly2P) = fly3r;
02071: 17D0 8B 45 8C    MOV     EAX, DWORD PTR FFFFFF8C[EBP]
02072: 17D3 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
			*(fly2P + 1) = fly3i;
02074: 17D5 8B 45 90    MOV     EAX, DWORD PTR FFFFFF90[EBP]
02075: 17D8 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
			*(fly2P + FlyOffsetA) = fly2r;
02077: 17DB 8B 7D 84    MOV     EDI, DWORD PTR FFFFFF84[EBP]
02078: 17DE 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02079: 17E4 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetA) = fly2r;
			*(fly2P + FlyOffsetAIm) = fly2i;
02081: 17E7 8B 7D 88    MOV     EDI, DWORD PTR FFFFFF88[EBP]
02082: 17EA 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02083: 17F0 89 3C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EDI
*(fly2P + FlyOffsetAIm) = fly2i;

			fly0r = *(fly0P + FlyOffsetB);
02085: 17F3 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
02086: 17F9 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
02087: 17FC 89 85 FFFFFF74MOV   DWORD PTR FFFFFF74[EBP], EAX
fly0r = *(fly0P + FlyOffsetB);
			fly0i = *(fly0P + FlyOffsetBIm);
02089: 1802 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
02090: 1808 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
02091: 180B 89 85 FFFFFF78MOV   DWORD PTR FFFFFF78[EBP], EAX
fly0i = *(fly0P + FlyOffsetBIm);

			*(fly1P + FlyOffsetA) = fly4r;
02093: 1811 8B 7D 94    MOV     EDI, DWORD PTR FFFFFF94[EBP]
02094: 1814 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02095: 181A 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetA) = fly4r;
			*(fly1P + FlyOffsetAIm) = fly4i;
02097: 181D 8B 7D 98    MOV     EDI, DWORD PTR FFFFFF98[EBP]
02098: 1820 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02099: 1826 89 3C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], EDI
*(fly1P + FlyOffsetAIm) = fly4i;
			*(fly1P) = t1r;
02101: 1829 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
02102: 182C 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
			*(fly1P + 1) = t1i;
02104: 182E 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
02105: 1831 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;

			fly1r = *(fly1P + FlyOffsetB);
02107: 1834 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
02108: 183A 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02109: 183D 89 85 FFFFFF7CMOV   DWORD PTR FFFFFF7C[EBP], EAX
fly1r = *(fly1P + FlyOffsetB);
			fly1i = *(fly1P + FlyOffsetBIm);
02111: 1843 8B 85 FFFFFEF0MOV   EAX, DWORD PTR FFFFFEF0[EBP]
02112: 1849 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02113: 184C 89 45 80    MOV     DWORD PTR FFFFFF80[EBP], EAX
fly1i = *(fly1P + FlyOffsetBIm);

			*(fly3P + FlyOffsetA) = fly5r;
02115: 184F 8B 7D 9C    MOV     EDI, DWORD PTR FFFFFF9C[EBP]
02116: 1852 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02117: 1858 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetA) = fly5r;
			*(fly3P + FlyOffsetAIm) = fly5i;
02119: 185B 8B 7D A0    MOV     EDI, DWORD PTR FFFFFFA0[EBP]
02120: 185E 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02121: 1864 89 3C 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDI
*(fly3P + FlyOffsetAIm) = fly5i;
			*(fly3P) = fly7r;
02123: 1867 8B 45 AC    MOV     EAX, DWORD PTR FFFFFFAC[EBP]
02124: 186A 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
			*(fly3P + 1) = fly7i;
02126: 186C 8B 45 B0    MOV     EAX, DWORD PTR FFFFFFB0[EBP]
02127: 186F 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

			fly0P = (fly0P + FlyOffsetB);
02129: 1872 03 9D FFFFFEE0ADD   EBX, DWORD PTR FFFFFEE0[EBP]
fly0P = (fly0P + FlyOffsetB);
			fly1P = (fly1P + FlyOffsetB);
02131: 1878 03 95 FFFFFEE0ADD   EDX, DWORD PTR FFFFFEE0[EBP]
fly1P = (fly1P + FlyOffsetB);
			fly2P = (fly2P + FlyOffsetB);
02133: 187E 03 8D FFFFFEE0ADD   ECX, DWORD PTR FFFFFEE0[EBP]
fly2P = (fly2P + FlyOffsetB);
			fly3P = (fly3P + FlyOffsetB);
02135: 1884 03 B5 FFFFFEE0ADD   ESI, DWORD PTR FFFFFEE0[EBP]
fly3P = (fly3P + FlyOffsetB);

		};
02137: 188A FF 8D FFFFFEFCDEC   DWORD PTR FFFFFEFC[EBP]
02138: 1890     L0017
02139: 1890 83 BD FFFFFEFC00 CMP DWORD PTR FFFFFEFC[EBP], 00000000
02140: 1897 0F 8F FFFFFA86 JG   L0018
};
		fly2r = *(fly2P);
02142: 189D 8B 01       MOV     EAX, DWORD PTR 00000000[ECX]
02143: 189F 89 45 84    MOV     DWORD PTR FFFFFF84[EBP], EAX
fly2r = *(fly2P);
		fly2i = *(fly2P + 1);
02145: 18A2 8B 41 04    MOV     EAX, DWORD PTR 00000004[ECX]
02146: 18A5 89 45 88    MOV     DWORD PTR FFFFFF88[EBP], EAX
fly2i = *(fly2P + 1);
		fly3r = *(fly3P);
02148: 18A8 8B 06       MOV     EAX, DWORD PTR 00000000[ESI]
02149: 18AA 89 45 8C    MOV     DWORD PTR FFFFFF8C[EBP], EAX
fly3r = *(fly3P);
		fly3i = *(fly3P + 1);
02151: 18AD 8B 46 04    MOV     EAX, DWORD PTR 00000004[ESI]
02152: 18B0 89 45 90    MOV     DWORD PTR FFFFFF90[EBP], EAX
fly3i = *(fly3P + 1);
		fly4r = *(fly0P + FlyOffsetA);
02154: 18B3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02155: 18B9 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
02156: 18BC 89 45 94    MOV     DWORD PTR FFFFFF94[EBP], EAX
fly4r = *(fly0P + FlyOffsetA);
		fly4i = *(fly0P + FlyOffsetAIm);
02158: 18BF 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02159: 18C5 8B 04 83    MOV     EAX, DWORD PTR 00000000[EBX][EAX*4]
02160: 18C8 89 45 98    MOV     DWORD PTR FFFFFF98[EBP], EAX
fly4i = *(fly0P + FlyOffsetAIm);
		fly5r = *(fly1P + FlyOffsetA);
02162: 18CB 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02163: 18D1 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02164: 18D4 89 45 9C    MOV     DWORD PTR FFFFFF9C[EBP], EAX
fly5r = *(fly1P + FlyOffsetA);
		fly5i = *(fly1P + FlyOffsetAIm);
02166: 18D7 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02167: 18DD 8B 04 82    MOV     EAX, DWORD PTR 00000000[EDX][EAX*4]
02168: 18E0 89 45 A0    MOV     DWORD PTR FFFFFFA0[EBP], EAX
fly5i = *(fly1P + FlyOffsetAIm);
		fly6r = *(fly2P + FlyOffsetA);
02170: 18E3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02171: 18E9 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
02172: 18EC 89 45 A4    MOV     DWORD PTR FFFFFFA4[EBP], EAX
fly6r = *(fly2P + FlyOffsetA);
		fly6i = *(fly2P + FlyOffsetAIm);
02174: 18EF 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02175: 18F5 8B 04 81    MOV     EAX, DWORD PTR 00000000[ECX][EAX*4]
02176: 18F8 89 45 A8    MOV     DWORD PTR FFFFFFA8[EBP], EAX
fly6i = *(fly2P + FlyOffsetAIm);
		fly7r = *(fly3P + FlyOffsetA);
02178: 18FB 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02179: 1901 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
02180: 1904 89 45 AC    MOV     DWORD PTR FFFFFFAC[EBP], EAX
fly7r = *(fly3P + FlyOffsetA);
		fly7i = *(fly3P + FlyOffsetAIm);
02182: 1907 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02183: 190D 8B 04 86    MOV     EAX, DWORD PTR 00000000[ESI][EAX*4]
02184: 1910 89 45 B0    MOV     DWORD PTR FFFFFFB0[EBP], EAX
fly7i = *(fly3P + FlyOffsetAIm);

		t1r = fly0r - U0r * fly1r;
02186: 1913 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02187: 1919 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02188: 191C D8 AD FFFFFF74FSUBR DWORD PTR FFFFFF74[EBP]
02189: 1922 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = fly0r - U0r * fly1r;
		t1r = t1r + U0i * fly1i;
02191: 1925 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02192: 1928 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02193: 192B D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
02194: 192E D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = t1r + U0i * fly1i;
		t1i = fly0i - U0i * fly1r;
02196: 1931 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02197: 1937 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02198: 193A D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
02199: 1940 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = fly0i - U0i * fly1r;
		t1i = t1i - U0r * fly1i;
02201: 1943 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02202: 1946 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02203: 1949 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
02204: 194C D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = t1i - U0r * fly1i;
		t0r = scale * fly0r - t1r;
02206: 194F D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02207: 1955 D8 0D 00000000 FMUL DWORD PTR .data+00000590
02208: 195B D8 65 DC    FSUB    DWORD PTR FFFFFFDC[EBP]
02209: 195E D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = scale * fly0r - t1r;
		t0i = scale * fly0i - t1i;
02211: 1961 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02212: 1967 D8 0D 00000000 FMUL DWORD PTR .data+00000594
02213: 196D D8 65 E0    FSUB    DWORD PTR FFFFFFE0[EBP]
02214: 1970 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = scale * fly0i - t1i;

		fly1r = fly2r - U0r * fly3r;
02216: 1973 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02217: 1976 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02218: 1979 D8 6D 84    FSUBR   DWORD PTR FFFFFF84[EBP]
02219: 197C D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly2r - U0r * fly3r;
		fly1r = fly1r + U0i * fly3i;
02221: 1982 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02222: 1985 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02223: 1988 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
02224: 198E D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly1r + U0i * fly3i;
		fly1i = fly2i - U0i * fly3r;
02226: 1994 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02227: 1997 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02228: 199A D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
02229: 199D D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly2i - U0i * fly3r;
		fly1i = fly1i - U0r * fly3i;
02231: 19A0 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02232: 19A3 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02233: 19A6 D8 6D 80    FSUBR   DWORD PTR FFFFFF80[EBP]
02234: 19A9 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly1i - U0r * fly3i;
		fly2r = scale * fly2r - fly1r;
02236: 19AC D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02237: 19AF D8 0D 00000000 FMUL DWORD PTR .data+00000598
02238: 19B5 D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
02239: 19BB D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = scale * fly2r - fly1r;
		fly2i = scale * fly2i - fly1i;
02241: 19BE D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02242: 19C1 D8 0D 00000000 FMUL DWORD PTR .data+0000059c
02243: 19C7 D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
02244: 19CA D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = scale * fly2i - fly1i;

		fly0r = fly4r - U0r * fly5r;
02246: 19CD D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
02247: 19D0 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02248: 19D3 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
02249: 19D6 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly4r - U0r * fly5r;
		fly0r = fly0r + U0i * fly5i;
02251: 19DC D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02252: 19DF D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02253: 19E2 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
02254: 19E8 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = fly0r + U0i * fly5i;
		fly0i = fly4i - U0i * fly5r;
02256: 19EE D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
02257: 19F1 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02258: 19F4 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
02259: 19F7 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly4i - U0i * fly5r;
		fly0i = fly0i - U0r * fly5i;
02261: 19FD D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02262: 1A00 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02263: 1A03 D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
02264: 1A09 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = fly0i - U0r * fly5i;
		fly4r = scale * fly4r - fly0r;
02266: 1A0F D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
02267: 1A12 D8 0D 00000000 FMUL DWORD PTR .data+000005a0
02268: 1A18 D8 A5 FFFFFF74FSUB  DWORD PTR FFFFFF74[EBP]
02269: 1A1E D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = scale * fly4r - fly0r;
		fly4i = scale * fly4i - fly0i;
02271: 1A21 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
02272: 1A24 D8 0D 00000000 FMUL DWORD PTR .data+000005a4
02273: 1A2A D8 A5 FFFFFF78FSUB  DWORD PTR FFFFFF78[EBP]
02274: 1A30 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = scale * fly4i - fly0i;

		fly3r = fly6r - U0r * fly7r;
02276: 1A33 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
02277: 1A36 D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02278: 1A39 D8 6D A4    FSUBR   DWORD PTR FFFFFFA4[EBP]
02279: 1A3C D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly6r - U0r * fly7r;
		fly3r = fly3r + U0i * fly7i;
02281: 1A3F D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
02282: 1A42 D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02283: 1A45 D8 45 8C    FADD    DWORD PTR FFFFFF8C[EBP]
02284: 1A48 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly3r + U0i * fly7i;
		fly3i = fly6i - U0i * fly7r;
02286: 1A4B D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
02287: 1A4E D8 4D B8    FMUL    DWORD PTR FFFFFFB8[EBP]
02288: 1A51 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
02289: 1A54 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly6i - U0i * fly7r;
		fly3i = fly3i - U0r * fly7i;
02291: 1A57 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
02292: 1A5A D8 4D B4    FMUL    DWORD PTR FFFFFFB4[EBP]
02293: 1A5D D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
02294: 1A60 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly3i - U0r * fly7i;
		fly6r = scale * fly6r - fly3r;
02296: 1A63 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
02297: 1A66 D8 0D 00000000 FMUL DWORD PTR .data+000005a8
02298: 1A6C D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
02299: 1A6F D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly6r = scale * fly6r - fly3r;
		fly6i = scale * fly6i - fly3i;
02301: 1A72 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
02302: 1A75 D8 0D 00000000 FMUL DWORD PTR .data+000005ac
02303: 1A7B D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
02304: 1A7E D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly6i = scale * fly6i - fly3i;

		fly5r = t0r - U1r * fly2r;
02306: 1A81 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02307: 1A84 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02308: 1A87 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
02309: 1A8A D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = t0r - U1r * fly2r;
		fly5r = fly5r + U1i * fly2i;
02311: 1A8D D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02312: 1A90 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02313: 1A93 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
02314: 1A96 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly5r + U1i * fly2i;
		fly5i = t0i - U1i * fly2r;
02316: 1A99 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02317: 1A9C D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02318: 1A9F D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
02319: 1AA2 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = t0i - U1i * fly2r;
		fly5i = fly5i - U1r * fly2i;
02321: 1AA5 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02322: 1AA8 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02323: 1AAB D8 6D A0    FSUBR   DWORD PTR FFFFFFA0[EBP]
02324: 1AAE D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly5i - U1r * fly2i;
		t0r = scale * t0r - fly5r;
02326: 1AB1 D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
02327: 1AB4 D8 0D 00000000 FMUL DWORD PTR .data+000005b0
02328: 1ABA D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
02329: 1ABD D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = scale * t0r - fly5r;
		t0i = scale * t0i - fly5i;
02331: 1AC0 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
02332: 1AC3 D8 0D 00000000 FMUL DWORD PTR .data+000005b4
02333: 1AC9 D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
02334: 1ACC D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = scale * t0i - fly5i;

		fly7r = t1r + U1i * fly1r;
02336: 1ACF D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02337: 1AD5 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02338: 1AD8 D8 45 DC    FADD    DWORD PTR FFFFFFDC[EBP]
02339: 1ADB D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = t1r + U1i * fly1r;
		fly7r = fly7r + U1r * fly1i;
02341: 1ADE D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02342: 1AE1 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02343: 1AE4 D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
02344: 1AE7 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = fly7r + U1r * fly1i;
		fly7i = t1i - U1r * fly1r;
02346: 1AEA D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02347: 1AF0 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02348: 1AF3 D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
02349: 1AF6 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = t1i - U1r * fly1r;
		fly7i = fly7i + U1i * fly1i;
02351: 1AF9 D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02352: 1AFC D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02353: 1AFF D8 45 B0    FADD    DWORD PTR FFFFFFB0[EBP]
02354: 1B02 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = fly7i + U1i * fly1i;
		t1r = scale * t1r - fly7r;
02356: 1B05 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
02357: 1B08 D8 0D 00000000 FMUL DWORD PTR .data+000005b8
02358: 1B0E D8 65 AC    FSUB    DWORD PTR FFFFFFAC[EBP]
02359: 1B11 D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = scale * t1r - fly7r;
		t1i = scale * t1i - fly7i;
02361: 1B14 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
02362: 1B17 D8 0D 00000000 FMUL DWORD PTR .data+000005bc
02363: 1B1D D8 65 B0    FSUB    DWORD PTR FFFFFFB0[EBP]
02364: 1B20 D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = scale * t1i - fly7i;

		fly2r = fly4r - U1r * fly6r;
02366: 1B23 D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
02367: 1B26 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02368: 1B29 D8 6D 94    FSUBR   DWORD PTR FFFFFF94[EBP]
02369: 1B2C D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly4r - U1r * fly6r;
		fly2r = fly2r + U1i * fly6i;
02371: 1B2F D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
02372: 1B32 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02373: 1B35 D8 45 84    FADD    DWORD PTR FFFFFF84[EBP]
02374: 1B38 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = fly2r + U1i * fly6i;
		fly2i = fly4i - U1i * fly6r;
02376: 1B3B D9 45 A4    FLD     DWORD PTR FFFFFFA4[EBP]
02377: 1B3E D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02378: 1B41 D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
02379: 1B44 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly4i - U1i * fly6r;
		fly2i = fly2i - U1r * fly6i;
02381: 1B47 D9 45 A8    FLD     DWORD PTR FFFFFFA8[EBP]
02382: 1B4A D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02383: 1B4D D8 6D 88    FSUBR   DWORD PTR FFFFFF88[EBP]
02384: 1B50 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = fly2i - U1r * fly6i;
		fly4r = scale * fly4r - fly2r;
02386: 1B53 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
02387: 1B56 D8 0D 00000000 FMUL DWORD PTR .data+000005c0
02388: 1B5C D8 65 84    FSUB    DWORD PTR FFFFFF84[EBP]
02389: 1B5F D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = scale * fly4r - fly2r;
		fly4i = scale * fly4i - fly2i;
02391: 1B62 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
02392: 1B65 D8 0D 00000000 FMUL DWORD PTR .data+000005c4
02393: 1B6B D8 65 88    FSUB    DWORD PTR FFFFFF88[EBP]
02394: 1B6E D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = scale * fly4i - fly2i;

		fly1r = fly0r + U1i * fly3r;
02396: 1B71 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02397: 1B74 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02398: 1B77 D8 85 FFFFFF74FADD  DWORD PTR FFFFFF74[EBP]
02399: 1B7D D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly0r + U1i * fly3r;
		fly1r = fly1r + U1r * fly3i;
02401: 1B83 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02402: 1B86 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02403: 1B89 D8 85 FFFFFF7CFADD  DWORD PTR FFFFFF7C[EBP]
02404: 1B8F D9 9D FFFFFF7CFSTP  DWORD PTR FFFFFF7C[EBP]
fly1r = fly1r + U1r * fly3i;
		fly1i = fly0i - U1r * fly3r;
02406: 1B95 D9 45 8C    FLD     DWORD PTR FFFFFF8C[EBP]
02407: 1B98 D8 4D BC    FMUL    DWORD PTR FFFFFFBC[EBP]
02408: 1B9B D8 AD FFFFFF78FSUBR DWORD PTR FFFFFF78[EBP]
02409: 1BA1 D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly0i - U1r * fly3r;
		fly1i = fly1i + U1i * fly3i;
02411: 1BA4 D9 45 90    FLD     DWORD PTR FFFFFF90[EBP]
02412: 1BA7 D8 4D C0    FMUL    DWORD PTR FFFFFFC0[EBP]
02413: 1BAA D8 45 80    FADD    DWORD PTR FFFFFF80[EBP]
02414: 1BAD D9 5D 80    FSTP    DWORD PTR FFFFFF80[EBP]
fly1i = fly1i + U1i * fly3i;
		fly0r = scale * fly0r - fly1r;
02416: 1BB0 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02417: 1BB6 D8 0D 00000000 FMUL DWORD PTR .data+000005c8
02418: 1BBC D8 A5 FFFFFF7CFSUB  DWORD PTR FFFFFF7C[EBP]
02419: 1BC2 D9 9D FFFFFF74FSTP  DWORD PTR FFFFFF74[EBP]
fly0r = scale * fly0r - fly1r;
		fly0i = scale * fly0i - fly1i;
02421: 1BC8 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02422: 1BCE D8 0D 00000000 FMUL DWORD PTR .data+000005cc
02423: 1BD4 D8 65 80    FSUB    DWORD PTR FFFFFF80[EBP]
02424: 1BD7 D9 9D FFFFFF78FSTP  DWORD PTR FFFFFF78[EBP]
fly0i = scale * fly0i - fly1i;

		U0i = *(U0iP = (U0iP - NsameU4));
02426: 1BDD 8B 85 FFFFFF18MOV   EAX, DWORD PTR FFFFFF18[EBP]
02427: 1BE3 2B 85 FFFFFF08SUB   EAX, DWORD PTR FFFFFF08[EBP]
02428: 1BE9 89 85 FFFFFF18MOV   DWORD PTR FFFFFF18[EBP], EAX
02429: 1BEF 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02430: 1BF1 89 45 B8    MOV     DWORD PTR FFFFFFB8[EBP], EAX
U0i = *(U0iP = (U0iP - NsameU4));
		U0r = *(U0rP = (U0rP + NsameU4));		
02432: 1BF4 8B 85 FFFFFF20MOV   EAX, DWORD PTR FFFFFF20[EBP]
02433: 1BFA 03 85 FFFFFF08ADD   EAX, DWORD PTR FFFFFF08[EBP]
02434: 1C00 89 85 FFFFFF20MOV   DWORD PTR FFFFFF20[EBP], EAX
02435: 1C06 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02436: 1C08 89 45 B4    MOV     DWORD PTR FFFFFFB4[EBP], EAX
U0r = *(U0rP = (U0rP + NsameU4));		
		U1r = *(U1rP = (U1rP + NsameU2));
02438: 1C0B 8B 85 FFFFFF4CMOV   EAX, DWORD PTR FFFFFF4C[EBP]
02439: 1C11 03 85 FFFFFF0CADD   EAX, DWORD PTR FFFFFF0C[EBP]
02440: 1C17 89 85 FFFFFF4CMOV   DWORD PTR FFFFFF4C[EBP], EAX
02441: 1C1D 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02442: 1C1F 89 45 BC    MOV     DWORD PTR FFFFFFBC[EBP], EAX
U1r = *(U1rP = (U1rP + NsameU2));
		U1i = *(U1iP = (U1iP - NsameU2));
02444: 1C22 8B 85 FFFFFF50MOV   EAX, DWORD PTR FFFFFF50[EBP]
02445: 1C28 2B 85 FFFFFF0CSUB   EAX, DWORD PTR FFFFFF0C[EBP]
02446: 1C2E 89 85 FFFFFF50MOV   DWORD PTR FFFFFF50[EBP], EAX
02447: 1C34 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02448: 1C36 89 45 C0    MOV     DWORD PTR FFFFFFC0[EBP], EAX
U1i = *(U1iP = (U1iP - NsameU2));
		if(stage&1)
02450: 1C39 83 BD FFFFFF2400 CMP DWORD PTR FFFFFF24[EBP], 00000000
02451: 1C40 74 08       JE      L0019
if(stage&1)
			U0r = - U0r;
02453: 1C42 D9 45 B4    FLD     DWORD PTR FFFFFFB4[EBP]
02454: 1C45 D9 E0       FCHS    
02455: 1C47 D9 5D B4    FSTP    DWORD PTR FFFFFFB4[EBP]
02456: 1C4A     L0019
U0r = - U0r;

		fly6r = t0r - U2r * fly4r;
02458: 1C4A D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
02459: 1C4D D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02460: 1C50 D8 6D D4    FSUBR   DWORD PTR FFFFFFD4[EBP]
02461: 1C53 D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly6r = t0r - U2r * fly4r;
		fly6r = fly6r + U2i * fly4i;
02463: 1C56 D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
02464: 1C59 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02465: 1C5C D8 45 A4    FADD    DWORD PTR FFFFFFA4[EBP]
02466: 1C5F D9 5D A4    FSTP    DWORD PTR FFFFFFA4[EBP]
fly6r = fly6r + U2i * fly4i;
		fly6i = t0i - U2i * fly4r;
02468: 1C62 D9 45 94    FLD     DWORD PTR FFFFFF94[EBP]
02469: 1C65 D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02470: 1C68 D8 6D D8    FSUBR   DWORD PTR FFFFFFD8[EBP]
02471: 1C6B D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly6i = t0i - U2i * fly4r;
		fly6i = fly6i - U2r * fly4i;
02473: 1C6E D9 45 98    FLD     DWORD PTR FFFFFF98[EBP]
02474: 1C71 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02475: 1C74 D8 6D A8    FSUBR   DWORD PTR FFFFFFA8[EBP]
02476: 1C77 D9 5D A8    FSTP    DWORD PTR FFFFFFA8[EBP]
fly6i = fly6i - U2r * fly4i;
		t0r = scale * t0r - fly6r;
02478: 1C7A D9 45 D4    FLD     DWORD PTR FFFFFFD4[EBP]
02479: 1C7D D8 0D 00000000 FMUL DWORD PTR .data+000005d0
02480: 1C83 D8 65 A4    FSUB    DWORD PTR FFFFFFA4[EBP]
02481: 1C86 D9 5D D4    FSTP    DWORD PTR FFFFFFD4[EBP]
t0r = scale * t0r - fly6r;
		t0i = scale * t0i - fly6i;
02483: 1C89 D9 45 D8    FLD     DWORD PTR FFFFFFD8[EBP]
02484: 1C8C D8 0D 00000000 FMUL DWORD PTR .data+000005d4
02485: 1C92 D8 65 A8    FSUB    DWORD PTR FFFFFFA8[EBP]
02486: 1C95 D9 5D D8    FSTP    DWORD PTR FFFFFFD8[EBP]
t0i = scale * t0i - fly6i;

		fly3r = fly5r - U2i * fly2r;
02488: 1C98 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02489: 1C9B D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02490: 1C9E D8 6D 9C    FSUBR   DWORD PTR FFFFFF9C[EBP]
02491: 1CA1 D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly5r - U2i * fly2r;
		fly3r = fly3r - U2r * fly2i;
02493: 1CA4 D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02494: 1CA7 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02495: 1CAA D8 6D 8C    FSUBR   DWORD PTR FFFFFF8C[EBP]
02496: 1CAD D9 5D 8C    FSTP    DWORD PTR FFFFFF8C[EBP]
fly3r = fly3r - U2r * fly2i;
		fly3i = fly5i + U2r * fly2r;
02498: 1CB0 D9 45 84    FLD     DWORD PTR FFFFFF84[EBP]
02499: 1CB3 D8 4D C4    FMUL    DWORD PTR FFFFFFC4[EBP]
02500: 1CB6 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
02501: 1CB9 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly5i + U2r * fly2r;
		fly3i = fly3i - U2i * fly2i;
02503: 1CBC D9 45 88    FLD     DWORD PTR FFFFFF88[EBP]
02504: 1CBF D8 4D C8    FMUL    DWORD PTR FFFFFFC8[EBP]
02505: 1CC2 D8 6D 90    FSUBR   DWORD PTR FFFFFF90[EBP]
02506: 1CC5 D9 5D 90    FSTP    DWORD PTR FFFFFF90[EBP]
fly3i = fly3i - U2i * fly2i;
		fly2r = scale * fly5r - fly3r;
02508: 1CC8 D9 45 9C    FLD     DWORD PTR FFFFFF9C[EBP]
02509: 1CCB D8 0D 00000000 FMUL DWORD PTR .data+000005d8
02510: 1CD1 D8 65 8C    FSUB    DWORD PTR FFFFFF8C[EBP]
02511: 1CD4 D9 5D 84    FSTP    DWORD PTR FFFFFF84[EBP]
fly2r = scale * fly5r - fly3r;
		fly2i = scale * fly5i - fly3i;
02513: 1CD7 D9 45 A0    FLD     DWORD PTR FFFFFFA0[EBP]
02514: 1CDA D8 0D 00000000 FMUL DWORD PTR .data+000005dc
02515: 1CE0 D8 65 90    FSUB    DWORD PTR FFFFFF90[EBP]
02516: 1CE3 D9 5D 88    FSTP    DWORD PTR FFFFFF88[EBP]
fly2i = scale * fly5i - fly3i;

		fly4r = t1r - U3r * fly0r;
02518: 1CE6 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02519: 1CEC D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02520: 1CEF D8 6D DC    FSUBR   DWORD PTR FFFFFFDC[EBP]
02521: 1CF2 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = t1r - U3r * fly0r;
		fly4r = fly4r + U3i * fly0i;
02523: 1CF5 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02524: 1CFB D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02525: 1CFE D8 45 94    FADD    DWORD PTR FFFFFF94[EBP]
02526: 1D01 D9 5D 94    FSTP    DWORD PTR FFFFFF94[EBP]
fly4r = fly4r + U3i * fly0i;
		fly4i = t1i - U3i * fly0r;
02528: 1D04 D9 85 FFFFFF74FLD   DWORD PTR FFFFFF74[EBP]
02529: 1D0A D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02530: 1D0D D8 6D E0    FSUBR   DWORD PTR FFFFFFE0[EBP]
02531: 1D10 D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = t1i - U3i * fly0r;
		fly4i = fly4i - U3r * fly0i;
02533: 1D13 D9 85 FFFFFF78FLD   DWORD PTR FFFFFF78[EBP]
02534: 1D19 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02535: 1D1C D8 6D 98    FSUBR   DWORD PTR FFFFFF98[EBP]
02536: 1D1F D9 5D 98    FSTP    DWORD PTR FFFFFF98[EBP]
fly4i = fly4i - U3r * fly0i;
		t1r = scale * t1r - fly4r;
02538: 1D22 D9 45 DC    FLD     DWORD PTR FFFFFFDC[EBP]
02539: 1D25 D8 0D 00000000 FMUL DWORD PTR .data+000005e0
02540: 1D2B D8 65 94    FSUB    DWORD PTR FFFFFF94[EBP]
02541: 1D2E D9 5D DC    FSTP    DWORD PTR FFFFFFDC[EBP]
t1r = scale * t1r - fly4r;
		t1i = scale * t1i - fly4i;
02543: 1D31 D9 45 E0    FLD     DWORD PTR FFFFFFE0[EBP]
02544: 1D34 D8 0D 00000000 FMUL DWORD PTR .data+000005e4
02545: 1D3A D8 65 98    FSUB    DWORD PTR FFFFFF98[EBP]
02546: 1D3D D9 5D E0    FSTP    DWORD PTR FFFFFFE0[EBP]
t1i = scale * t1i - fly4i;

		fly5r = fly7r + U3i * fly1r;
02548: 1D40 D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02549: 1D46 D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02550: 1D49 D8 45 AC    FADD    DWORD PTR FFFFFFAC[EBP]
02551: 1D4C D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly7r + U3i * fly1r;
		fly5r = fly5r + U3r * fly1i;
02553: 1D4F D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02554: 1D52 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02555: 1D55 D8 45 9C    FADD    DWORD PTR FFFFFF9C[EBP]
02556: 1D58 D9 5D 9C    FSTP    DWORD PTR FFFFFF9C[EBP]
fly5r = fly5r + U3r * fly1i;
		fly5i = fly7i - U3r * fly1r;
02558: 1D5B D9 85 FFFFFF7CFLD   DWORD PTR FFFFFF7C[EBP]
02559: 1D61 D8 4D CC    FMUL    DWORD PTR FFFFFFCC[EBP]
02560: 1D64 D8 6D B0    FSUBR   DWORD PTR FFFFFFB0[EBP]
02561: 1D67 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly7i - U3r * fly1r;
		fly5i = fly5i + U3i * fly1i;
02563: 1D6A D9 45 80    FLD     DWORD PTR FFFFFF80[EBP]
02564: 1D6D D8 4D D0    FMUL    DWORD PTR FFFFFFD0[EBP]
02565: 1D70 D8 45 A0    FADD    DWORD PTR FFFFFFA0[EBP]
02566: 1D73 D9 5D A0    FSTP    DWORD PTR FFFFFFA0[EBP]
fly5i = fly5i + U3i * fly1i;
		fly7r = scale * fly7r - fly5r;
02568: 1D76 D9 45 AC    FLD     DWORD PTR FFFFFFAC[EBP]
02569: 1D79 D8 0D 00000000 FMUL DWORD PTR .data+000005e8
02570: 1D7F D8 65 9C    FSUB    DWORD PTR FFFFFF9C[EBP]
02571: 1D82 D9 5D AC    FSTP    DWORD PTR FFFFFFAC[EBP]
fly7r = scale * fly7r - fly5r;
		fly7i = scale * fly7i - fly5i;
02573: 1D85 D9 45 B0    FLD     DWORD PTR FFFFFFB0[EBP]
02574: 1D88 D8 0D 00000000 FMUL DWORD PTR .data+000005ec
02575: 1D8E D8 65 A0    FSUB    DWORD PTR FFFFFFA0[EBP]
02576: 1D91 D9 5D B0    FSTP    DWORD PTR FFFFFFB0[EBP]
fly7i = scale * fly7i - fly5i;

		*(fly0P + FlyOffsetA) = fly6r;
02578: 1D94 8B 7D A4    MOV     EDI, DWORD PTR FFFFFFA4[EBP]
02579: 1D97 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02580: 1D9D 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetA) = fly6r;
		*(fly0P + FlyOffsetAIm) = fly6i;
02582: 1DA0 8B 7D A8    MOV     EDI, DWORD PTR FFFFFFA8[EBP]
02583: 1DA3 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02584: 1DA9 89 3C 83    MOV     DWORD PTR 00000000[EBX][EAX*4], EDI
*(fly0P + FlyOffsetAIm) = fly6i;
		*(fly0P) = t0r;
02586: 1DAC 8B 45 D4    MOV     EAX, DWORD PTR FFFFFFD4[EBP]
02587: 1DAF 89 03       MOV     DWORD PTR 00000000[EBX], EAX
*(fly0P) = t0r;
		*(fly0P + 1) = t0i;
02589: 1DB1 8B 45 D8    MOV     EAX, DWORD PTR FFFFFFD8[EBP]
02590: 1DB4 89 43 04    MOV     DWORD PTR 00000004[EBX], EAX
*(fly0P + 1) = t0i;

		U2r = *(U2rP = (U2rP + NsameU1));
02592: 1DB7 8B 85 FFFFFF48MOV   EAX, DWORD PTR FFFFFF48[EBP]
02593: 1DBD 03 85 FFFFFF10ADD   EAX, DWORD PTR FFFFFF10[EBP]
02594: 1DC3 89 85 FFFFFF48MOV   DWORD PTR FFFFFF48[EBP], EAX
02595: 1DC9 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02596: 1DCB 89 45 C4    MOV     DWORD PTR FFFFFFC4[EBP], EAX
U2r = *(U2rP = (U2rP + NsameU1));
		U2i = *(U2iP = (U2iP - NsameU1));
02598: 1DCE 8B 85 FFFFFF54MOV   EAX, DWORD PTR FFFFFF54[EBP]
02599: 1DD4 2B 85 FFFFFF10SUB   EAX, DWORD PTR FFFFFF10[EBP]
02600: 1DDA 89 85 FFFFFF54MOV   DWORD PTR FFFFFF54[EBP], EAX
02601: 1DE0 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02602: 1DE2 89 45 C8    MOV     DWORD PTR FFFFFFC8[EBP], EAX
U2i = *(U2iP = (U2iP - NsameU1));

		*(fly2P) = fly3r;
02604: 1DE5 8B 45 8C    MOV     EAX, DWORD PTR FFFFFF8C[EBP]
02605: 1DE8 89 01       MOV     DWORD PTR 00000000[ECX], EAX
*(fly2P) = fly3r;
		*(fly2P + 1) = fly3i;
02607: 1DEA 8B 45 90    MOV     EAX, DWORD PTR FFFFFF90[EBP]
02608: 1DED 89 41 04    MOV     DWORD PTR 00000004[ECX], EAX
*(fly2P + 1) = fly3i;
		*(fly2P + FlyOffsetA) = fly2r;
02610: 1DF0 8B 5D 84    MOV     EBX, DWORD PTR FFFFFF84[EBP]
02611: 1DF3 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02612: 1DF9 89 1C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EBX
*(fly2P + FlyOffsetA) = fly2r;
		*(fly2P + FlyOffsetAIm) = fly2i;
02614: 1DFC 8B 5D 88    MOV     EBX, DWORD PTR FFFFFF88[EBP]
02615: 1DFF 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02616: 1E05 89 1C 81    MOV     DWORD PTR 00000000[ECX][EAX*4], EBX
*(fly2P + FlyOffsetAIm) = fly2i;
		*(fly1P + FlyOffsetA) = fly4r;
02618: 1E08 8B 4D 94    MOV     ECX, DWORD PTR FFFFFF94[EBP]
02619: 1E0B 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02620: 1E11 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetA) = fly4r;
		*(fly1P + FlyOffsetAIm) = fly4i;
02622: 1E14 8B 4D 98    MOV     ECX, DWORD PTR FFFFFF98[EBP]
02623: 1E17 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02624: 1E1D 89 0C 82    MOV     DWORD PTR 00000000[EDX][EAX*4], ECX
*(fly1P + FlyOffsetAIm) = fly4i;
		*(fly1P) = t1r;
02626: 1E20 8B 45 DC    MOV     EAX, DWORD PTR FFFFFFDC[EBP]
02627: 1E23 89 02       MOV     DWORD PTR 00000000[EDX], EAX
*(fly1P) = t1r;
		*(fly1P + 1) = t1i;
02629: 1E25 8B 45 E0    MOV     EAX, DWORD PTR FFFFFFE0[EBP]
02630: 1E28 89 42 04    MOV     DWORD PTR 00000004[EDX], EAX
*(fly1P + 1) = t1i;

		U3r = *( U2rP + U3offset);
02632: 1E2B 8B 8D FFFFFF44MOV   ECX, DWORD PTR FFFFFF44[EBP]
02633: 1E31 8B 85 FFFFFF48MOV   EAX, DWORD PTR FFFFFF48[EBP]
02634: 1E37 8B 04 88    MOV     EAX, DWORD PTR 00000000[EAX][ECX*4]
02635: 1E3A 89 45 CC    MOV     DWORD PTR FFFFFFCC[EBP], EAX
U3r = *( U2rP + U3offset);
		U3i = *( U2iP - U3offset);
02637: 1E3D 8B 85 FFFFFF54MOV   EAX, DWORD PTR FFFFFF54[EBP]
02638: 1E43 2B 85 FFFFFF1CSUB   EAX, DWORD PTR FFFFFF1C[EBP]
02639: 1E49 8B 00       MOV     EAX, DWORD PTR 00000000[EAX]
02640: 1E4B 89 45 D0    MOV     DWORD PTR FFFFFFD0[EBP], EAX
U3i = *( U2iP - U3offset);

		*(fly3P + FlyOffsetA) = fly5r;
02642: 1E4E 8B 55 9C    MOV     EDX, DWORD PTR FFFFFF9C[EBP]
02643: 1E51 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02644: 1E57 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetA) = fly5r;
		*(fly3P + FlyOffsetAIm) = fly5i;
02646: 1E5A 8B 55 A0    MOV     EDX, DWORD PTR FFFFFFA0[EBP]
02647: 1E5D 8B 85 FFFFFEC8MOV   EAX, DWORD PTR FFFFFEC8[EBP]
02648: 1E63 89 14 86    MOV     DWORD PTR 00000000[ESI][EAX*4], EDX
*(fly3P + FlyOffsetAIm) = fly5i;
		*(fly3P) = fly7r;
02650: 1E66 8B 45 AC    MOV     EAX, DWORD PTR FFFFFFAC[EBP]
02651: 1E69 89 06       MOV     DWORD PTR 00000000[ESI], EAX
*(fly3P) = fly7r;
		*(fly3P + 1) = fly7i;
02653: 1E6B 8B 45 B0    MOV     EAX, DWORD PTR FFFFFFB0[EBP]
02654: 1E6E 89 46 04    MOV     DWORD PTR 00000004[ESI], EAX
*(fly3P + 1) = fly7i;

		IOP = IOP + 2;
02656: 1E71 83 85 FFFFFF2C08 ADD DWORD PTR FFFFFF2C[EBP], 00000008
IOP = IOP + 2;
		fly0P = IOP;
02658: 1E78 8B 9D FFFFFF2CMOV   EBX, DWORD PTR FFFFFF2C[EBP]
fly0P = IOP;
		fly1P = (IOP+Flyinc);
02660: 1E7E 89 D8       MOV     EAX, EBX
02661: 1E80 03 85 FFFFFF00ADD   EAX, DWORD PTR FFFFFF00[EBP]
02662: 1E86             NOOP    
02663: 1E86 89 C2       MOV     EDX, EAX
fly1P = (IOP+Flyinc);
		fly2P = (fly1P+Flyinc);
02665: 1E88 89 D7       MOV     EDI, EDX
02666: 1E8A 03 BD FFFFFF00ADD   EDI, DWORD PTR FFFFFF00[EBP]
02667: 1E90             NOOP    
02668: 1E90 89 F9       MOV     ECX, EDI
fly2P = (fly1P+Flyinc);
		fly3P = (fly2P+Flyinc);
02670: 1E92 89 FE       MOV     ESI, EDI
02671: 1E94 03 B5 FFFFFF00ADD   ESI, DWORD PTR FFFFFF00[EBP]
02672: 1E9A             NOOP    
fly3P = (fly2P+Flyinc);
	};
02674: 1E9A FF 8D FFFFFF04DEC   DWORD PTR FFFFFF04[EBP]
02675: 1EA0     L0015
02676: 1EA0 83 BD FFFFFF0400 CMP DWORD PTR FFFFFF04[EBP], 00000000
02677: 1EA7 0F 8F FFFFF420 JG   L0016
};
	NsameU4 = -NsameU4;
02679: 1EAD 8B 85 FFFFFF38MOV   EAX, DWORD PTR FFFFFF38[EBP]
02680: 1EB3 F7 D8       NEG     EAX
02681: 1EB5 89 85 FFFFFF38MOV   DWORD PTR FFFFFF38[EBP], EAX
NsameU4 = -NsameU4;

	if(stage&1){
02683: 1EBB 83 BD FFFFFF3000 CMP DWORD PTR FFFFFF30[EBP], 00000000
02684: 1EC2 74 5E       JE      L001A
if(stage&1){
		LoopN >>= 3;
02686: 1EC4 C1 BD FFFFFF3403 SAR DWORD PTR FFFFFF34[EBP], 00000003
LoopN >>= 3;
		NsameU1 >>= 3;
02688: 1ECB C1 BD FFFFFF2803 SAR DWORD PTR FFFFFF28[EBP], 00000003
NsameU1 >>= 3;
		NsameU2 >>= 3;
02690: 1ED2 C1 BD FFFFFF1403 SAR DWORD PTR FFFFFF14[EBP], 00000003
NsameU2 >>= 3;
		NsameU4 >>= 3;
02692: 1ED9 C1 BD FFFFFF3803 SAR DWORD PTR FFFFFF38[EBP], 00000003
NsameU4 >>= 3;
		NdiffU <<= 3;
02694: 1EE0 C1 A5 FFFFFF5803 SHL DWORD PTR FFFFFF58[EBP], 00000003
NdiffU <<= 3;
		Flyinc = Flyinc << 3;
02696: 1EE7 C1 A5 FFFFFF4003 SHL DWORD PTR FFFFFF40[EBP], 00000003
Flyinc = Flyinc << 3;
		FlyOffsetA <<= 3;
02698: 1EEE C1 A5 FFFFFED403 SHL DWORD PTR FFFFFED4[EBP], 00000003
FlyOffsetA <<= 3;
		FlyOffsetB <<= 3;
02700: 1EF5 C1 A5 FFFFFEEC03 SHL DWORD PTR FFFFFEEC[EBP], 00000003
FlyOffsetB <<= 3;
		FlyOffsetAIm =  FlyOffsetA + 1;
02702: 1EFC 8B 85 FFFFFED4MOV   EAX, DWORD PTR FFFFFED4[EBP]
02703: 1F02 89 85 FFFFFEC8MOV   DWORD PTR FFFFFEC8[EBP], EAX
02704: 1F08 83 85 FFFFFEC801 ADD DWORD PTR FFFFFEC8[EBP], 00000001
02705: 1F0F             NOOP    
FlyOffsetAIm =  FlyOffsetA + 1;
		FlyOffsetBIm =  FlyOffsetB + 1;
02707: 1F0F 8B 85 FFFFFEECMOV   EAX, DWORD PTR FFFFFEEC[EBP]
02708: 1F15 89 85 FFFFFEF0MOV   DWORD PTR FFFFFEF0[EBP], EAX
02709: 1F1B 83 85 FFFFFEF001 ADD DWORD PTR FFFFFEF0[EBP], 00000001
02710: 1F22             NOOP    
FlyOffsetBIm =  FlyOffsetB + 1;
	}
02712: 1F22     L001A
}
}
02714: 1F22 FF 8D FFFFFF3CDEC   DWORD PTR FFFFFF3C[EBP]
02715: 1F28     L0012
02716: 1F28 83 BD FFFFFF3C00 CMP DWORD PTR FFFFFF3C[EBP], 00000000
02717: 1F2F 0F 8F FFFFF1FE JG   L0013
}
M=M+1;	/* for RIFFT */
02719: 1F35 83 45 0C 01 ADD     DWORD PTR 0000000C[EBP], 00000001
M=M+1;	/* for RIFFT */

ioptr += Ntbl[M];
02721: 1F39 8B 45 0C    MOV     EAX, DWORD PTR 0000000C[EBP]
02722: 1F3C 8B 04 85 00000000 MOV EAX, DWORD PTR ?Ntbl@@3PBJB[EAX*4]
02723: 1F43 C1 E0 02    SHL     EAX, 00000002
02724: 1F46 01 45 08    ADD     DWORD PTR 00000008[EBP], EAX
ioptr += Ntbl[M];
}
02726: 1F49 FF 4D 10    DEC     DWORD PTR 00000010[EBP]
02727: 1F4C     L0001
02728: 1F4C 83 7D 10 00 CMP     DWORD PTR 00000010[EBP], 00000000
02729: 1F50 0F 8F FFFFE113 JG   L0002
}
}
02731: 1F56     L0000
02732: 1F56 8D 65 F4    LEA     ESP, DWORD PTR FFFFFFF4[EBP]
02733: 1F59 5F          POP     EDI
02734: 1F5A 5E          POP     ESI
02735: 1F5B 5B          POP     EBX
02736: 1F5C 5D          POP     EBP
02737: 1F5D C3          RETN    
Total cost of all spills: 26572

